vb.net - 在 VB 中创建的 .txt 文件与我随机创建的文件是否不同?

标签 vb.net windows batch-file

所以,基本上,在没有任何 Visual Studio 经验的情况下,我想改进我的动画工作流程。所以,我想使用 http://www.aseprite.org/cli/ 中找到的东西要做到这一点。

因此,我编写了一个小程序来获取文件夹中的所有 .ase 文件,并创建一个文本文件,其中包含批处理文件所需的行,以将所述 .ase 文件转换为 .gif 或 png 文件。我很笨,所以我手动将文本文件转换为.bat文件。

但是从程序生成的 .txt 文件在转换为 .bat 时不起作用,但如果我将这些行复制到我在 Windows 中创建的另一个 .txt 文件中,并将其转换为 .bat,它就可以工作。

所以问题是 - 我是否损坏了 Visual Studio 中的 .txt 文件或其他文件? 如果代码有问题,我会分享它,但我很不愿意,因为我不想经历格式错误的噩梦。

哦,是的,我知道这不是一个明智的做法。

编辑:啊,对了,批处理文件的错误,顺便说一下,它非常快地闪烁并关闭命令行提示符:'--batch'不被识别为内部或外部命令,可运行程序或批处理文件。

.bat 中的代码如下:

@set ASEPRITE="C:\Program Files\Aseprite\aseprite.exe"
%ASEPRITE% --batch animation.ase --scale 2 --save-as animation-x2.gif
%ASEPRITE% --batch animation.ase --scale 4 --save-as animation-x4.gif

基本上,我在 VB 中创建 txt 文件和文本,如下所示:

' Dim fs As FileStream = File.Create(Label1.Text + "\Text.txt")
    fs.Close()

    For Each foundFile As String In My.Computer.FileSystem.GetFiles(Label1.Text)

        Dim check As String = System.IO.Path.GetExtension(foundFile)

        If check = ".ase" Then
            ListBox1.Items.Add(Dir(foundFile))
            str = Dir(foundFile)
            str = str.Replace(".ase", fType)
            My.Computer.FileSystem.WriteAllText(Label1.Text + "\Text.txt",
                                                "%ASEPRITE% --batch " + Dir(foundFile) + " --scale " + fSize + " --save-as " + str + vbCrLf,
                                                True)
        End If
    Next

'

最佳答案

您可以尝试使用特定编码写入文件:

File.WriteAllText(path, text, Encoding.UTF8) ' or UTF or ASCII

也可能是 UTF8 编码器使用了无法读取的字节顺序标记:

File.WriteAllText(path, text, new UTF8Encoding(false))

另一件事是要寻找行尾字符。是 \r\n 还是只是 \n

您可以使用文件比较器来检查文件之间的差异,并且应该清楚差异是什么。

关于vb.net - 在 VB 中创建的 .txt 文件与我随机创建的文件是否不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28242846/

相关文章:

vb.net - 表单 keyDown 不起作用?

python - 在 Windows 中使用 pexpect.popen_spawn.PopenSpawn() 运行 telnet 实例

batch-file - 通过批处理文件杀死 MS Access 进程

asp.net - Visual Basic 中的 @Html.BeginForm 语法

不使用正则表达式对字母和数字排列进行 SQL 匹配

c# - 对于用户控件,如何设置项模板项到用户属性的绑定(bind)?

windows - 如何转义批处理文件中的符号?

c++ - 客户端-服务器设计

windows - 在 Windows 上的 QQuickView 中使用 MenuBar 组件

windows - 如何从不同目录的其他批处理文件中的批处理文件启动 exe 文件?