【求助】關於FileSystemObject的空白字串



贊助商連結


cinta3344
2004-04-28, 07:27 PM
例如我有一個文字檔old.txt如下:
<PRE>
aaaaaaaaaa
bbbbbbbb
(空白)
ccccccccc
</PRE>
當我使用FSO(如下)要將該檔讀出並Append到另一個檔案時,發現TRIM函數好像只發揮LTrim的功用,空白列依舊存在,右邊的空白字元也沒刪掉(皆非全形空白)∼

'多餘的空白無法解決∼∼
Dim FS, TS, F
Set FS = CreateObject("Scripting.FileSystemObject")
Set TS = FS.OpenTextFile("c:\old.txt", 1, True)
i = 0
s = Split(TS.ReadAll, Chr(10), , vbTextCompare)
TS.Close
Set TS = FS.OpenTextFile("C:\new.txt", 8, True, -2)
For i = 0 To UBound(s)
If Trim(s(i)) <> "" Then
TS.WriteLine Trim(s(i))
End If
Next
TS.Close
反而使用傳統BASIC檔案處理的方式就能順利將空白行、字元除掉
Dim s As String
Open "c:\old.txt" For Input As 1#
Open "C:\new.txt" For Append As 2#
Do Until EOF(1)
Input #1, s
If Trim(s) <> "" Then
Print #2, s
End If
Loop
Close
' Kill "c:\old.txt"
不過舊的開檔方式無法寫成.vbs,請問各位先進能解答我的疑惑嗎?
謝謝∼