博客园备份小工具使用加代码说明(Java小程序)
2019-01-18 19:26
471 查看
前言
写了两年多的博客了,我想整理我的博客,问题是,得一个个打开,之后复制粘贴,嫌这样太麻烦,于是便找到了博客园的备份功能。
但是这个备份功能下载下来的只是一个xml文件,我想把每一篇博文都转为一个md文件,于是便有了这个Java小工具。
工具下载
使用说明
从博客园上下载备份的xml文件 将本项目下载,打开run.bat,输入前面下载的xml文件的地址,即会在xml文件的同目录生成一个博客园的文件夹,里面存放MD文件和Html文件
程序讲解
涉及知识
- IO流
- xml解析
xml文件分析
从博客园下载的xml备份文件,格式大概是这样的
<channel> <title></title> <link></link> <description<</description> <language></language> <lastBuildDate></lastBuildDate> <pubDate></pubDate> <ttl></ttl> <item></item> <item></item> ... </channel>
其中的
item就是我们博客中每一篇博文
item结构
<item> <title></title> <link></link> <dc:creator></dc:creator> <author></author> <pubDate></pubDate> <guid></guid> <description></description> <item>
item结点之下还有子结点
title是我们的博文标题
link则是我们博文对应的链接
description则是我们博客的内容
NodeList itemLists = document.getElementsByTagName("item");//获得所有的item结点 for (int i = 0; i < itemLists.getLength(); i++) { NodeList list = itemLists.item(i).getChildNodes();//获得item结点之下的全部结点,有7个,下标从0开始 String title = list.item(0).getTextContent();//第一个结点内容是标题 String link = list.item(1).getTextContent();//第二个结点内容是链接 String description = list.item(6).getTextContent(); fileWrite(title,link,description); }
PS:这里需要注意到是,
description里面获取的内容我们查看的时候发现是下面这样的代码
这个
CDATA其实是个xml的标准标签,表明这里面的内容都是文本(上面的也就是测试和句号才是内容,解析的时候会忽略掉两个中括号)
区分md文件和html文件
如果是md文件,开头不可能出现
<这个符号,如果是html文件,因为要使用到各种标签,p,h,div等标签,肯定开头是有
<这个符号的
html文件转md文件
如果想不想要html文件,想要md文件的话,就得手动去整理格式,可以先使用在线的工具将html文件转为md格式,这个百度一下就有工具了,不过还得慢慢整理一下,格式转换过来不一定符合排版,我们得手动地去排个版。
相关文章推荐
- (转载)C Java PHP Perl Python的程序代码美化工具使用
- C Java PHP Perl Python的程序代码美化工具使用
- C Java PHP Perl Python的程序代码美化工具使用
- C Java PHP Perl Python 的程序代码美化工具(Pretty Print Program/Source Code Beautifier)使用
- 【转贴】C Java PHP Perl Python的程序代码美化工具使用
- C Java PHP Perl Python的程序代码美化工具使用
- 使用JAVA发送HTTP请求(Http Request),返回HTTP响应(Http Response)内容,代码程序例子及原理说明
- ETL工具kettle与java结合使用程序生成一个简单的转化文件
- Java代码审查工具findbugs的使用总结
- 反编译工具 使用.NET JustDecompile来反编译你的程序代码
- 使用Eclipse调试Java程序代码
- 使用Eclipse调试Java程序代码
- [编写高质量代码:改善java程序的151个建议]建议68 频繁插入和删除时使用LinkedList
- [编写高质量代码:改善java程序的151个建议]建议57 推荐在复杂字符串操作中使用正则表达式
- Java程序内存分析:使用mat工具分析内存占用
- Mysql第三方备份工具Xtrabackup使用说明
- Mysql第三方备份工具Xtrabackup使用说明
- HPROF:Java程序的内存及CPU使用分析工具
- 一个WinForm程序配置信息的简单模型和维护工具——使用说明