如何使用vba編寫末尾不帶[0D 0A(VBCRLF)]的文字文件

如何使用vba編寫末尾不帶[0D 0A(VBCRLF)]的文字文件

我正在開發流程

使用FileSystemObject複製文字檔案並根據Excel資料編輯文字檔案內容。

雖然原始文字檔案的換行程式碼是[0A(VBLF)],

編輯後,更新後的文字檔案的換行程式碼變成[0D 0A(VBCRLF)]。

我想將換行程式碼編寫為原始文字檔案。

這樣做的最佳方法是什麼?提前致謝。

答案1

如果您逐行編寫文字文件,則可以選擇換行符

Sub sampleWriteVBLF()

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set objFile = fso.CreateTextFile("D:\test.txt", True)

    objFile.Write "Hello" & vbLf
    objFile.Write "World" & vbLf

    objFile.Close

End Sub

在此輸入影像描述

            VBA       VBA               HEX     NAME
LF    \n    VbLf      Chr(10)           0x0A    Line Feed
CR    \r    VbCr      Chr(13)           0x0D    Carriage Return
CR+LF \r\n  VbCrLf    Chr(10)&Chr(13)   0x0D0A  Carriage Return Line Feed    

編輯:您必須使用,.write因為.WriteLine總是會附加一個額外的 CRLF 換行符。但你已經有一個 LF 換行符

相關內容