说到批量转html文件,相信喜欢看小说或经常制作电子书和教程的朋友应该很熟悉。因为,我们每次都会面临成千上万的txt文件,要将其转换为能正确显示的html文件是很麻烦的。当然,现在有很多的软件也可以实现,但本人也下了很多的软件,试了很多次,结果也令人不甚满意。因此,我就自己动手制作了一个批处理来解决这个问题,现在给大家分享一下。

我们这个批处工具在转换为HTML格式后仍以原文件名进行保存,且默认第一行为标题行和网页名称!因此请确保所有TXT文件第一行都有标题,否则第一段就会成为标题。

为保证转换结果不会出现乱码,在进行转换前我们要确定转换前的TXT文件的编码为UTF-8,因为UTF-8是网页的通用格式,很多浏览器默认都是以UTF-8的编码格式打开的。如果你的所有TXT文件都是GB2312编码的,我会在下一篇文章中发表GB2312转UTF-8的批处理,请期待,这里就不作赘述了。

回归正题,请将以下代码(分割线以下)复制到一个记事本中,另存为“TXT批量转HTML工具.bat”

---------------------分割线 ---------------------

@echo off
set utf8=65001
set ansi=936
chcp %utf8%
for /f "delims=" %%i in ('dir /b *.txt') do (
findstr /n .* "%%i" >.tmp
( echo ^<html^>
echo ^<head^>
echo ^<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /^>
echo ^<meta name="GENERATOR" content="Microsoft FrontPage 4.0" /^>
echo ^<meta name="ProgId" content="FrontPage.Editor.Document" /^>
setlocal enabledelayedexpansion
for /r %%a in (*.tmp) do (
set /p Str=<"%%~a"
echo ^<title^>!str:*:=!^</title^>
)
EndLocal
echo ^</head^>
echo ^<body^>
setlocal enabledelayedexpansion
for /r %%a in (*.tmp) do (
set /p Str=<"%%~a"
echo ^<h1^>!str:*:=!^</h1^>
)
EndLocal
for /f "skip=1 delims=" %%i in (.tmp) do (
set str=%%i
SetLocal EnableDelayedExpansion
echo !str:*:=!^<br^>
EndLocal
)
echo ^</body^>
echo ^</html^>
) > %%~ni.html
) del .tmp

---------------------分割线 ---------------------

使用方法:请将工具放到你要转换为HTML文件的TXT文件夹下,双击运行即可。

最后程序会在当前文件夹下生成与原TXT文件同名的HTML文件。

转载于:https://blog.51cto.com/9268726/2072293

【批处理】TXT文件批量转HTML文件工具的更多相关文章

  1. 文件批量上传的工具,要实现暂停继续、断点续传等功能(使用QtNetwork和QHttpMultiPart,和定时器检查超时)

    最近在做一个文件批量上传的工具,要实现暂停继续.断点续传等功能.利用Qt自带的QtNetwork模块,完成这些需求并没有费多少周章,主要思路就是将文件分块,然后用while循环依次传输.具体实现代码比 ...

  2. 如果把PNG、JPG、BMP和GIF文件批量转换为ICO文件?

    有时候需要将大量的图片文件(比如PNG.JPG.BMP和GIF文件)批量转换为ICO图标文件,如果一个一个操作,非常费时间.本文将介绍如何用Dr. Folder软件快速批量转换图片文件为ICO图标文件 ...

  3. 将doc文件批量转为pdf文件

    需要将不少doc文件转为pdf,WPS带有这种功能,但是鼠标点击次数太多以后整个人都变得很烦躁 用了一下午去搜这方面的工具软件,找到若干.有一些免费,有一些试用的,但总归就找到一个真正能用,虽说生成的 ...

  4. C# 获取网络文件 批量压缩成 文件流 并下载 压缩包

    需要的DLL : ICSharpCode.SharpZipLib.dll JS部分 //下载所有文件的 压缩包 function DownAllFile() { //zip文件名 var zipNam ...

  5. 不带插件 ,自己写js,实现批量上传文件及进度显示

    今天接受项目中要完成文件批量上传文件而且还要显示上传进度,一开始觉得这个应该不是很麻烦,当我在做的时候遇到了很多问题,很头疼啊. 不过看了别人写的代码,自己也测试过,发现网上好多都存在一些问题,并不是 ...

  6. 【转】巧用DOS tree命令+批处理 实现 指定文件 批量复制!

    转自:http://www.cnblogs.com/looky/archive/2010/01/24/1655292.html 今天一朋友叫我帮忙解决指定文件批量复制的问题,于是找了一大堆批处理命令, ...

  7. 利用osql/ocmd批处理批量执行sql文件

    原文:利用osql/ocmd批处理批量执行sql文件 上周在测试环境建了几十张表,保存了.sql文件,准备在正式环境重建的时候懒得一个个打开建了,做一在网上搜寻了一下,果然有简单点的方法. 利用osq ...

  8. 用脚本如何实现将Linux下的txt文件批量转化为Windows下的txt文件?

    众所周知,Windows和Linux的文件换行回车格式不同,Windows下换行格式是\r\n(回车+换行),Linux下换行格式为\n(只是换行),因此,其中一个操作系统的文本文件若需要在另外一个中 ...

  9. 用C#Winform写个简单的批量清空文件内容和删除文件的小工具

    用C#Winform写个简单的批量清空文件内容和删除文件的小工具 本文介绍这个简单得不能再简单的小项目.做这个项目,有以下目的. 1 当然是做个能用的工具 2 学习使用Github 关于用VS2013 ...

随机推荐

  1. 使用appium框架测试安卓app时,获取toast弹框文字时,前一步千万不要加time.sleep等等待时间。

    使用appium框架测试安卓app时,如果需要获取toast弹框的文案内容,那么再点击弹框按钮之前,一定记得千万不要加time.sleep()等待时间,否则有延迟,一直获取不到: 获取弹框的代码: m ...

  2. Linux Shell编程,双括号运算符(())

    双括号运算符是shell非常强大的扩展. 这里简要介绍两种使用方式: 1.条件判断 跟在if.while.until,for等需要逻辑条件的命令后,进行逻辑判断 if(( expr));then … ...

  3. redis 安装and对外开放端口

    第一步: $ cd /usr/local/src $ wget http://download.redis.io/releases/redis-5.0.4.tar.gz $ tar xzf redis ...

  4. canvas压缩、裁切图片和格式转换的方法

    按照大小压缩图片,或者按照特定分辨率裁切图片,转为blob数据.自动处理ios中可能存在的照片偏差90°问题. 例如,获取300*300大小的头像,实现以下效果: 使用方式: <!-- 引入js ...

  5. mysql添加,授权,删除用户以及连接数据库Can't connect to MySQL server on '192.168.31.106' (113)错误排查

    centos7下面操作mysql添加,授权,删除用户 添加用户 以root用户登录数据库,运行以下命令: create user test identified by '; 上面创建了用户test,密 ...

  6. week7_简单题_C_水题_hdu_5578+F_贪心_hdu_5583

      C    HDU_5578 求字符串中所有相同字母的最小距离H. Input 实例个数T然后T行字符串字符串中仅含有小写字母.1≤T≤501≤len≤1000(len为字符串长度) Output ...

  7. Three.js如何选中外部模型

    1.问题 three.js中模型选中使用的是射线法,根据摄像机角度,鼠标点击位置和模型选中的distance参数判断来选中模型.对于原生的矢量模型完全没有问题,但是当遇到导入的外部模型,如obj.st ...

  8. 浅谈Vector

    浅谈Vector 在之前的文章中,我们已经说过线程不安全的ArrayList和LinkedList,今天我们来讲讲一个线程安全的列表容器,他就是Vector,他的底层和ArrayList一样使用数组来 ...

  9. 【MyBatis深入剖析】应用分析与最佳实践

    ##### 文章目标1. 了解ORM框架的发展历史,了解MyBatis特性2. 掌握MyBatis编程式开发方法和核心对象3. 掌握MyBatis核心配置含义4. 掌握MyBatis的高级用法与扩展方 ...

  10. stand up meeting 12/24/2015 && end sprint1

    part 组员                工作              工作耗时/h 明日计划 工作耗时/h    UI 冯晓云  解决单词本显示页面的问题    4 完善显示页面的功能   4 ...