标题: [文本处理] [已解决]批处理怎样将多个txt内容导入表格? [打印本页]
作者: gddsssko 时间: 2024-6-15 10:24 标题: [已解决]批处理怎样将多个txt内容导入表格?
本帖最后由 gddsssko 于 2024-6-15 17:03 编辑
将目录下、子目录及子子目录下所有txt文件名称和内容导入到表格
将第1个txt名称放在表格A1单元格,txt内容每隔一行放入一个单元格(第一行放入B1单元格,第二行放入C1单元格......)
将第2个txt名称放在表格A2单元格,txt内容每隔一行放入一个单元格(第一行放入B2单元格,第二行放入C2单元格......)
...
将第n个txt名称放在表格An单元格,txt内容每隔一行放入一个单元格(第一行放入Bn单元格,第二行放入Cn单元格......)
//空行也算一行,txt内容一般不超过100行, txt导入不考虑先后顺序,txt总数量超过一万。
例如:
TXT文件名称为:
A01.txt
TXT文件内容为:
你好,世界
HelloWorld
上边是空行
ABC123
导入到表格:
A1单元格:A01 B1单元格:你好,世界 C1单元格:HelloWorld D1单元格: E1单元格:上边是空行 F1单元格:ABC123
作者: 77七 时间: 2024-6-15 12:17
- @echo off
- cd /d "%~dp0"
- (for /r %%i in (*.txt) do (
- set /p="%%~ni"<nul
- for /f "tokens=1* delims=[]" %%a in ('find /n /v "" ^<"%%i"') do (
- set /p=","%%b""<nul
- )
- echo=
- ))>out.csv
- pause
复制代码
作者: newswan 时间: 2024-6-15 14:06
100 行 10000 列
如果是excel 用 vba 或者 powershell 好些
作者: gddsssko 时间: 2024-6-15 15:25
本帖最后由 gddsssko 于 2024-6-15 15:35 编辑
回复 2# 77七
链接:https://pan.baidu.com/s/1wJge02-TI0REsBc9r2hcug?pwd=4b3g
提取码:4b3g
txt名字正常,内容里面的汉字却乱码,然后两个文本内容之间中间还夹杂着几百行教程:
SET [variable=[string]]
variable 指定环境变量名。
string 指定要指派给变量的一系列字符串。
要显示当前环境变量,键入不带参数的 SET。
如果命令扩展被启用,SET 会如下改变:
可仅用一个变量激活 SET 命令,等号或值不显示所有前缀匹配
SET 命令已使用的名称的所有变量的值。例如:
SET P
会显示所有以字母 P 打头的变量
如果在当前环境中找不到该变量名称,SET 命令将把 ERRORLEVEL
设置成 1。
SET 命令不允许变量名含有等号。
在 SET 命令中添加了两个新命令行开关:
SET /A expression
SET /P variable=[promptString]
/A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式
评估器很简单并以递减的优先权顺序支持下列操作:
() - 分组
! ~ - - 一元运算符
* / % - 算数运算符
+ - - 算数运算符
<< >> - 逻辑移位
& - 按位“与”
^ - 按位“异”
| - 按位“或”
= *= /= %= += -= - 赋值
&= ^= |= <<= >>=
等等差不多300行
作者: 77七 时间: 2024-6-15 16:16
回复 4# gddsssko
我找到原因了,没有对 文本中的引号做处理。- @echo off
- chcp 65001 >nul
- cd /d "%~dp0"
- (for /r %%i in (*.txt) do (
- set str="%%~ni"
- for /f "tokens=1* delims=[]" %%a in ('find /n /v "" ^<"%%i"') do (
- set line=%%b
- setlocal enabledelayedexpansion
- if "!line!" neq "" (
- set "line=!line:"=""!"
- )
- for /f "delims=" %%x in ("!str!,"!line!"") do (
- endlocal
- set "str=%%x"
- )
- )
- setlocal enabledelayedexpansion
- echo=!str!
- endlocal
- ))>out.csv
- pause
复制代码
作者: gddsssko 时间: 2024-6-15 17:02
回复 5# 77七
OK了,还是你最帅啊
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |