查看: 362|回复: 41
打印 上一主题 下一主题

[悬赏] 悬赏8千米求-批量分割TXT工具

[复制链接]
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    跳转到指定楼层
    1
    发表于 2020-9-30 19:10:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    8000
    本帖最后由 999阿彌陀佛 于 2020-10-6 07:36 编辑

    要求:可以批量分割TXT,一整个文件夹中的多个文件同时进行分割。支持文件夹及子目录操作。分割最好按行数,或大小。分割后不能有乱码。支持UTF-8文本。

    分割后自动重命名,并放入自动新建的文件夹里。就像图片工厂分割图片一样。
    同时一次性选中多个文件夹,让软件分割文件夹中的TXT,不要逐个去选中TXT
    要求批量分割!
    软件或BAT批处理都可以

    成品:
    链接: https://pan.baidu.com/s/1unuNeGvgiVBjhltx01EVzA 提取码: 5sxm

    最佳答案

    查看完整内容

    解决了。遇到超长的单行文本将会自动截断并给出提示。至于乱码?不存在的。。。 https://cloud.189.cn/t/MVBFbmrqAJFr

    评分

    1

    查看全部评分

  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    2
    发表于 2020-9-30 19:10:38 | 只看该作者
    本帖最后由 a8539749 于 2020-10-6 18:29 编辑
    999阿彌陀佛 发表于 2020-10-4 21:53
    不会出现乱乱码的话,可以从中间断开。

    解决了。遇到超长的单行文本将会自动截断并给出提示。至于乱码?不存在的。。。
    https://cloud.189.cn/t/MVBFbmrqAJFr

  • TA的每日心情
    奋斗
    23 小时前
  • 签到天数: 1154 天

    [LV.10]以坛为家III

    32

    主题

    1871

    回帖

    6万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    62403

    QQ 章

    3
    发表于 2020-9-30 19:31:29 | 只看该作者
    老马的TextForever不是也能多选切分么?
    8、文件切分(Split Files)

    能够按照指定的大小切分文本文件,并且避免因为切出半个汉字而造成乱码,或将一个英文单词切到两个文件中。

    某些手机对jar文件大小有限制,所以在制作jar电子书前,往往需要先对文本文件进行切分,然后再打包成jar书。

    使用方法:

    先设置“文件选项”,再设置“文件最大长度”,然后点击“开始”按钮,在弹出的对话框中选择需要切分的文件(可多选)即可。每切分一个文件,都会在您所选的文件所在目录下创建一个子目录,存放切分后的文件。

    点评

    经测试,切分后有乱码。。。  发表于 2020-10-1 12:51
  • TA的每日心情
    奋斗
    2021-3-30 20:22
  • 签到天数: 55 天

    [LV.5]常住居民I

    1

    主题

    66

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12127
    4
    发表于 2020-9-30 19:40:03 | 只看该作者
    逐行分割几乎是最简单的方式了吧,其实你自己稍微学点编程就能轻松搞定了。
    我是最近比较忙,没空搞这个,要不可以赚点积分。
  • TA的每日心情
    奋斗
    2021-3-30 20:22
  • 签到天数: 55 天

    [LV.5]常住居民I

    1

    主题

    66

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    12127
    5
    发表于 2020-9-30 19:41:31 | 只看该作者
    Python比较快入门简单,你可以去学习下

    点评

    學了一點,放棄了。。。  发表于 2020-9-30 21:15
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    6
    发表于 2020-9-30 19:44:40 | 只看该作者
    这个用脚本很容易解决,但是不知道你对分割的具体要求是什么?比如说,每个文本具体限制多少行或具体限定大小等。

    点评

    文本具体限制多少行或具体限定大小。要求可以自定義。  发表于 2020-9-30 21:11
  • TA的每日心情
    开心
    2022-6-29 07:24
  • 签到天数: 289 天

    [LV.8]以坛为家I

    17

    主题

    858

    回帖

    9688

    积分

    进士

    Rank: 8Rank: 8

    积分
    9688
    7
    发表于 2020-9-30 20:06:30 | 只看该作者
    用软件分割后,文档经常出现乱码,无法解决。
  • TA的每日心情
    开心
    2023-2-17 08:38
  • 签到天数: 321 天

    [LV.8]以坛为家I

    4

    主题

    785

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    11494

    QQ 章

    8
    发表于 2020-9-30 20:10:53 | 只看该作者
    emeditor就可以,一键式操作。http://www.yeslib.com/detail/4248

    点评

    要求批量。。。  发表于 2020-9-30 21:13
  • TA的每日心情
    擦汗
    昨天 07:00
  • 签到天数: 1090 天

    [LV.10]以坛为家III

    124

    主题

    1772

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    10477

    灌水大神章小蜜蜂章笑傲江湖章

    9
    发表于 2020-10-1 12:49:46 | 只看该作者
    我倒是有多个不同脚本,不过windows上也许稍有点不便。其中python的根据用户指定标识分段,然后直接对每部份处理,不转出为文件。根据行数的为bash脚本。你要的话我可以找一下。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    10
     楼主| 发表于 2020-10-1 12:52:06 | 只看该作者
    yangtaoppt 发表于 2020-9-30 19:40
    逐行分割几乎是最简单的方式了吧,其实你自己稍微学点编程就能轻松搞定了。
    我是最近比较忙,没空搞这个, ...

    你抽空写一个吧
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    11
    发表于 2020-10-1 14:41:29 | 只看该作者
    本帖最后由 a8539749 于 2020-10-3 17:44 编辑

    https://cloud.189.cn/t/Ez6f6frqMvYr(链接已失效,更新版在楼下)
    这是在win10 64环境下打包的exe,win7 32环境下可能执行不了。你试试看,不行再改。
    使用步骤说明:1.把exe程序与所有要处理的txt文件夹放到同一目录下;
    2.双击执行,然后需要按照提示进行,如指定输出目录、指定文本分割方式,指定分割大小或分割行数、选择文本编码等;
    3.上述参数确定后程序会自动执行,最后你只要去输出目录查看处理好的文本就行了。
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    12
    发表于 2020-10-2 12:32:40 | 只看该作者
    本帖最后由 a8539749 于 2020-10-2 12:41 编辑
    a8539749 发表于 2020-10-1 14:41
    https://cloud.189.cn/t/Ez6f6frqMvYr
    这是在win10 64环境下打包的exe,win7 32环境下可能执行不了。你试 ...

    更新了一下,使得程序能够自动检测txt编码,能够自主选择分割方式与输出编码,按大小分割文本时保证末行文本不被截断。有需要的朋友可以拿去使用。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    13
     楼主| 发表于 2020-10-3 08:49:48 | 只看该作者
    a8539749 发表于 2020-10-2 12:32
    更新了一下,使得程序能够自动检测txt编码,能够自主选择分割方式与输出编码,按大小分割文本时保证末行文 ...

    十分感謝!測試了下,按大小切,我寫80,可切分出的都是230K以上,以下的就沒有切分。你檢查下。
    按大小切,末行是完整的,是吧。
  • TA的每日心情
    开心
    2023-2-17 09:48
  • 签到天数: 338 天

    [LV.8]以坛为家I

    0

    主题

    756

    回帖

    2万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    24276
    14
    发表于 2020-10-3 09:02:21 | 只看该作者
    借问一下,非unicode的multibytes部分要如何检测编码?如big5,gbk
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    15
    发表于 2020-10-3 12:21:15 | 只看该作者
    本帖最后由 a8539749 于 2020-10-3 14:57 编辑
    999阿彌陀佛 发表于 2020-10-3 08:49
    十分感謝!測試了下,按大小切,我寫80,可切分出的都是230K以上,以下的就沒有切分。你檢查下。
    按大小 ...

    检查了下,应该是多字节编码的问题、导致切分出的大小刚好是设定的三倍左右。稍等一下,我改进一下算法,应该就没问题了

  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    16
    发表于 2020-10-3 15:12:24 | 只看该作者
    peiryo 发表于 2020-10-3 09:02
    借问一下,非unicode的multibytes部分要如何检测编码?如big5,gbk

    python里可以用自动检测编码的模块chardet,其它语言也有相应的库或算法,你可以自己搜看看。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    17
     楼主| 发表于 2020-10-3 16:12:55 | 只看该作者
    a8539749 发表于 2020-10-3 12:21
    检查了下,应该是多字节编码的问题、导致切分出的大小刚好是设定的三倍左右。稍等一下,我改进一下算法, ...

    我觉得按大小切分,不用生成文本信息。会节省很多时间。直接切分即可。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    18
     楼主| 发表于 2020-10-3 16:34:26 | 只看该作者
    本帖最后由 999阿彌陀佛 于 2020-10-3 16:50 编辑
    a8539749 发表于 2020-10-3 12:21
    检查了下,应该是多字节编码的问题、导致切分出的大小刚好是设定的三倍左右。稍等一下,我改进一下算法, ...

    生成文本信息。可以选择 跳过/不跳过。多一个选择。经测试,当TXT几百个,或几千个时,生成的统计信息耗时过长。。。
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    19
    发表于 2020-10-3 17:37:26 | 只看该作者
    本帖最后由 a8539749 于 2020-10-4 11:59 编辑
    999阿彌陀佛 发表于 2020-10-3 16:34
    生成文本信息。可以选择 跳过/不跳过。多一个选择。经测试,当TXT几百个,或几千个时,生成的统计信息耗时 ...

    好了。试试看,行不行。有什么不好的地方还可以再改。

  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    20
    发表于 2020-10-4 12:15:05 | 只看该作者
    本帖最后由 a8539749 于 2020-10-4 17:01 编辑
    a8539749 发表于 2020-10-3 17:37
    好了。试试看,行不行。有什么不好的地方还可以再改。

    更新了一下,使得分割出的文件大小更为准确,程序执行效率更高。用用看,如果没有其它问题的话,这个就是最终版了。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    21
     楼主| 发表于 2020-10-4 15:50:01 | 只看该作者
    a8539749 发表于 2020-10-3 17:37
    好了。试试看,行不行。有什么不好的地方还可以再改。

    基本上可以了。生成的文件序号是_000000.txt开始的,可否改成_000001.txt开始,好统计
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    22
    发表于 2020-10-4 17:00:25 | 只看该作者
    本帖最后由 a8539749 于 2020-10-5 00:15 编辑
    999阿彌陀佛 发表于 2020-10-4 15:50
    基本上可以了。生成的文件序号是_000000.txt开始的,可否改成_000001.txt开始,好统计 ...


    加了个自定义起始编号的选项(默认为1)。另外,所有的参数也都设置了默认值,懒得设置的话,直接一路Enter过去就行了。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    23
     楼主| 发表于 2020-10-4 18:50:57 | 只看该作者
    a8539749 发表于 2020-10-4 17:00
    https://cloud.189.cn/t/vMbQ3emeqmEn
    加了个自定义起始编号的选项(默认为1)。另外,所有的参数也都设置了 ...

    测试发现,有些文件分割出现问题,出现无限多0KB的文件。你看看
    上一版没有这问题。

    您有一份文件待查收!即刻点击链接获取文件:https://cowtransfer.com/s/41b68334c3744c 或进入 cowtransfer.com 获取,在首页输入取件码:hfvtnt(24小时内有效)
  • TA的每日心情
    开心
    2021-1-25 11:19
  • 签到天数: 168 天

    [LV.7]常住居民III

    2

    主题

    205

    回帖

    3482

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3482
    24
    发表于 2020-10-4 20:54:47 | 只看该作者
    本帖最后由 a8539749 于 2020-10-5 00:25 编辑
    999阿彌陀佛 发表于 2020-10-4 18:50
    测试发现,有些文件分割出现问题,出现无限多0KB的文件。你看看
    上一版没有这问题。

    这三个txt我测试了一下没问题啊,只是等待时间稍长。程序的算法,除了一些比较特殊的情况,比如单行文本长度超长,甚至超过了设定的分割大小那种,一般是不会出错的。
    附:我测试时的参数是按大小分割,分割大小:100KB,输出编码utf-8,你按这个设置对那3个txt测试一下,如果还是出错那就可能是运行环境的问题了

  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34117

    QQ 章

    25
     楼主| 发表于 2020-10-4 21:29:56 | 只看该作者
    a8539749 发表于 2020-10-4 20:54
    这三个txt我测试了一下没问题啊,只是等待时间长了点(大约二三十秒吧,效率看来还是不行)。程序的算法, ...

    分割大小:100KB没问题。

    分割大小:50KB,你试试。就会出现问题。