Board logo

标题: [文本处理] 如何使用批处理将txt转CSV? [打印本页]

作者: xw95    时间: 2023-4-15 17:14     标题: 如何使用批处理将txt转CSV?

之前使用过一个第三方,可以实现txt转CSV,但是无法设定分隔符,如果有空格,无论怎么设定空格都会被分成几列。想求一个可以用指定字符分隔的TXT转EXCEL.
作者: Batcher    时间: 2023-4-16 17:11

回复 1# xw95


请给个txt作为例子上传到网盘,以便测试代码。
作者: czjt1234    时间: 2023-4-16 17:44

powershell命令
Export-Csv
Import-Csv
参数 -Delimiter <char> 可以指定分隔符
作者: czjt1234    时间: 2023-4-16 20:08

powershell不熟悉,写了个vbs的
  1. f1 = "1.txt"        '源文件
  2. f2 = "D:\1.xlsx"    '目标文件
  3. f3 = "|"            '源文件的分隔符
  4. Set oExcel = CreateObject("Excel.Application")
  5. Set oWorkBook = oExcel.Workbooks.Add()
  6. Set oSheet = oWorkBook.Sheets(1)
  7. Set oFSO = CreateObject("Scripting.FileSystemObject")
  8. Set oTextStream = oFSO.OpenTextFile(f1)
  9. n = 1
  10. Do While oTextStream.AtEndOfStream = False
  11.     t = Split(oTextStream.ReadLine(), f3)
  12.     If UBound(t) > -1 Then
  13.         For i = 0 To UBound(t)
  14.             oSheet.cells(n, i + 1) = t(i)
  15.         Next
  16.         n = n + 1
  17.     End If
  18. Loop
  19. oTextStream.Close()
  20. oWorkBook.SaveAs f2
  21. oExcel.Quit()
  22. MsgBox "ok"
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2