吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 896|回复: 13
收起左侧

[资源求助] TXT文本分割器

[复制链接]
lx2759 发表于 2023-8-18 19:07
25吾爱币
1.有13万行数据,需要分割比如1000行一个文本
2.能更改编码,比如原本是中文GB2312,可选择分割出来编码格式,如:ANSI

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lx2759 发表于 2023-8-27 08:51
已自行解决
1.先将文本编码格式变更,再使用分割工具分割(想的太复杂了
愚无尽 发表于 2023-8-18 21:56
ycat 发表于 2023-8-18 22:24
https://t.wss.ink/f/byxcas3kfv3 复制链接到浏览器打开
jack98 发表于 2023-8-18 22:28
以下是一个示例的批处理(.bat)文件,可以完成你描述的内容:
请确保将数据文件命名为"data.txt",并将其和批处理文件放在同一目录下。运行批处理文件后,根据提示输入每个文本文件的行数,然后选择要使用的编码格式(1代表ANSI,2代表UTF-8)。程序会自动在输出文件夹中生成按行数分割后的文本文件,并根据选择的编码格式进行相应的编码转换。

[Python] 纯文本查看 复制代码
@echo off
setlocal enableextensions enabledelayedexpansion

set INPUT_FILE=data.txt
set OUTPUT_FOLDER=output

set /p CHUNK_SIZE=请输入每个文本文件的行数:

REM 创建输出文件夹
mkdir %OUTPUT_FOLDER%

REM 设置编码格式选择菜单
:select_encoding
cls
echo 请选择要使用的编码格式:
echo 1. ANSI
echo 2. UTF-8
set /p ENCODING_OPTION=请输入选项(1或2):

if "%ENCODING_OPTION%"=="1" (
    set OUTPUT_ENCODING=ANSI
) else if "%ENCODING_OPTION%"=="2" (
    set OUTPUT_ENCODING=UTF-8
) else (
    echo 输入无效的选项,请重新输入。
    timeout /t 3 >nul
    goto select_encoding
)

REM 分割数据文件
set /a CHUNCK_NUMBER=0
set /a LINE_COUNT=0

for /f "tokens=1 delims=:" %%a in ('find /c /v "" ^< %INPUT_FILE%') do set TOTAL_LINES=%%a

for /f "usebackq delims=" %%a in ("%INPUT_FILE%") do (
    set /a LINE_COUNT+=1
    set /a LINE_MOD=!LINE_COUNT! %% !CHUNK_SIZE!

    if !LINE_MOD! equ 1 (
        set /a CHUNK_NUMBER+=1
        set OUTPUT_FILE=%OUTPUT_FOLDER%\chunk!CHUNK_NUMBER!.txt
        echo 分割文件:!OUTPUT_FILE!
        echo. > !OUTPUT_FILE!
    )

    echo %%a>>!OUTPUT_FILE!

    if !LINE_COUNT! equ !TOTAL_LINES! (
        echo 数据分割完成!
        timeout /t 3 >nul
    )
)

REM 转换编码格式
if "%OUTPUT_ENCODING%"=="UTF-8" (
    for /r %OUTPUT_FOLDER% %%f in (*.txt) do (
        echo 转换编码格式为UTF-8:%%f
        powershell -Command "(Get-Content '%%f') | Set-Content -Encoding UTF8 '%%~pf%%~nf_utf8.txt'"
        del "%%f"
        ren "%%~pf%%~nf_utf8.txt" "%%~nf.txt"
    )
)

endlocal
jack98 发表于 2023-8-18 22:30
然后我传一个bat文件给你吧。
请确保将数据文件命名为"data.txt",并将其和批处理文件放在同一目录下。运行批处理文件后,根据提示输入每个文本文件的行数,然后选择要使用的编码格式(1代表ANSI,2代表UTF-8)。程序会自动在输出文件夹中生成按行数分割后的文本文件,并根据选择的编码格式进行相应的编码转换。
https://t.wss.ink/f/byxe8fjn6qr 复制链接到浏览器打开
wyl0205 发表于 2023-8-18 22:32
以前txt论坛存在的时候,这类工具很多。但是单个没有你想要的功能
https://wyl0205.lanzoul.com/i3yNo15rf1gb
这里有两个,可以配合着用试试。
wyl0205 发表于 2023-8-18 23:00
jack98 发表于 2023-8-18 22:28
以下是一个示例的批处理(.bat)文件,可以完成你描述的内容:
请确保将数据文件命名为"data.txt",并将其 ...

高手,厉害,批处理还能这么用
jyjjf 发表于 2023-8-18 23:05
wyl0205 发表于 2023-8-18 23:00
高手,厉害,批处理还能这么用

感觉是chatgpt生成的
wyl0205 发表于 2023-8-18 23:17
编码转换:
https://wyl0205.lanzoul.com/ieaJf15riewd
文本分割:
https://wyl0205.lanzoul.com/isfdS15riexe

按照2楼提供的软件,3楼提供的连接,提取出来了两个。分割功能有缺陷,只能分割utf-8格式的
如采纳这个,不用给我悬赏。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-29 08:18

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表