说到批量转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. 启用SELinux保护

                                                               启用SELinux保护 案例1:启用SELinux保护 1.1问题 本例要求为虚拟 ...

  2. vector数组的相关知识

    Vector 类实现了一个动态数组.和 ArrayList 很相似,但是两者是不同的: Vector 是同步访问的. Vector 包含了许多传统的方法,这些方法不属于集合框架. Vector 主要用 ...

  3. (js描述的)数据结构[双向链表](5)

    (js描述的)数据结构[双向链表](5) 一.单向链表的缺点 1.只能按顺序查找,即从上一个到下一个,不能反过来. 二.双向链表的优点 1.可以双向查找 三.双向链表的缺点 1.结构较单向链表复杂. ...

  4. Dubbo 路由机制的实现

    Dubbo 路由机制是在服务间的调用时,通过将服务提供者按照设定的路由规则来决定调用哪一个具体的服务. 路由服务结构 Dubbo 实现路由都是通过实现 RouterFactory 接口.当前版本 du ...

  5. 设置xml以让通知spring 扫描 注解

    <!--下边三个都是告诉spring扫描注解--> 一.<context:component-scan base-package="log.logback"/&g ...

  6. java的套接字实现远程连接

    package jnet;//客户端程序,使用套接字连接服务器import java.net.*;import java.io.*;import javax.swing.*; public class ...

  7. 【Java】 语言基础习题汇总 [1] 基础概念到数组

    1 JDK JRE JVM 三种之间的关系,以及JDK JRE 包含的主要结构有哪些? JDK = JRE + 开发工具 javac.exe java.exe javadoc.exe等等 JRE = ...

  8. 如果我选择IT行业,会不会在几年,或者几年后被社会给淘汰??

    IT互联网各行业薪资占比,你能拿到多少?随着移动互联网时代的发展,IT行业的需求量也越来越大,而且每年都会新增,当然也会有淘汰. 人生如此之短,都不喜欢自己虚度光阴,也不希望自己所努力的东西成为历史, ...

  9. D. Feeding Chicken(构造)

    题目大意:将k个鸡放到一个n*m的矩阵中,要求每个鸡所占的rice的个数只差最小 题解:构造,设一共有cnt个rice,可以分cnt/k个,即每一只鸡要么占用cnt/k个rice,要么占cnt/k+1 ...

  10. java文件上传、下载、图片预览

    多文件保存到本地: @ResponseBody    @RequestMapping(value = "/uploadApp",produces = { "applica ...