中易网

怎么将HTML转为XHTML

答案:5  悬赏:50  
解决时间 2021-01-22 22:39
怎么将HTML转为XHTML
最佳答案
具体步骤如下:(为确保安全操作前请备份)
1. 把DOCTYPE更改为严格的XHTML,如果你还在使用过渡的HTML(HTML4.01),那你可以把它转化为过渡的XHTML

2. 添加xmlns属性、lang属性、和xml:lang属性到开始标记

3. 标记必须是DOCTYPE之后的第一个标记,而必须是文档的最后一个标记

4. 所有元素名称必须用小写字母表示

5. 所有开始标记都须对应有结束标记。如果一个元素是空的,那么他的标记必须是以空格结尾,后跟/>

6. 所有的属性值必须是空,并且带双引号

7. 在HTML理不能使用&,&表示实体的开始,因此,应当用&;此外,吧特殊字符转化转化为实体

8. 将COCTYPE改为严格的XHTML 1.0


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

9.添加xmlns 属性、lang属性和xml:lang属性到元素



10.所有的空标记都应为 "/>"结尾,而不是 “>”


全部回答
dreamweaver,
这个是一种标准,你可以先看一下这样的标准,然后根据这个标准自己来写一个这样的软件,至于用什么软件可以转换,你可以上网搜一下,不就可以了吗.
使用JTidy将html转化成xhtml
代码如下:
package beans;
import java.io.*;
import java.text.*;
import java.util.*;
import java.net.*;
import org.w3c.tidy.Configuration;
import org.w3c.tidy.Tidy;
public class test
{
public static void main(String args[])
{
testt = newtest();
t.doTidy("c:\\hopetest\\b.html");//转化开始
}
public void doTidy(Stringf_in)
{
BufferedInputStream sourceIn; //输入流
ByteArrayOutputStream tidyOutStream; //输出流
try
{
Reader reader;
FileInputStreamfis=new FileInputStream(f_in);//读文件
ByteArrayOutputStreambos=newByteArrayOutputStream();
intch;
while((ch=fis.read())!=-1)
{
bos.write(ch);
}
fis.close();
byte[]bs=bos.toByteArray();
bos.close();
String hope_gb2312=new String(bs,"GB2312");//注意,默认是GB2312,所以这里先转化成GB2312然后再转化成其他的。
byte[] hope_b=hope_gb2312.getBytes();
String basil=new String(hope_b,"utf-8");//将GB2312转化成UTF-8
byte[]basil_b=basil.getBytes();
ByteArrayInputStream stream = newByteArrayInputStream(basil.getBytes());
tidyOutStream = new ByteArrayOutputStream();
Tidy tidy = new Tidy();
tidy.setInputEncoding("UTF-8");
tidy.setQuiet(true);
tidy.setOutputEncoding("UTF-8");
tidy.setShowWarnings(false); //不显示警告信息
tidy.setIndentContent(true);//
tidy.setSmartIndent(true);
tidy.setIndentAttributes(false);
tidy.setWraplen(1024); //多长换行
//输出为xhtml
tidy.setXHTML(true);
tidy.setErrout(newPrintWriter(System.out));
tidy.parse(stream, tidyOutStream);
DataOutputStreamto=newDataOutputStream(newFileOutputStream("C:\\hopetest\\bb.xhtml"));//将生成的xhtml写入
tidyOutStream.writeTo(to);
System.out.println(tidyOutStream.toString());
}
catch ( Exception ex )
{
System.out.println( ex.toString());
ex.printStackTrace();
}
}
}
我暂时保留我的看法!
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
刚做了双眼皮,有什么要注意的?
15岁,少女与成年男子发生性关系,第二天少女
与台湾哥弟风格相近的二线女装品与台湾哥弟风
斜视遗传几率?谢谢了
如何做好企业的培训?
怎样计算分娩期
电话线上网最快速度能达到多少?
芦荟养发护肤馆地址在哪,我要去那里办事
长沙牙齿美白冷光美白贵不贵?
好的段落 要注明出处 快!!
lg2用计算机算怎么按
鸿源手机店地址有知道的么?有点事想过去
台湾位于祖国什么位置
投影仪超高压汞灯泡和LED灯泡哪个好,清晰度
SARS是怎么消失的?
推荐资讯
美国比中国早几小时?
求指教 如何做好一家酒店的前台主管
创一快递地址好找么,我有些事要过去
炫彩女装美甲地址好找么,我有些事要过去
新浪微博如何发私信?
商业非正常户会不会影响个人征信
考研数三范围
我假期里掌握了小技巧
整数类i是什么
DIY酸奶怎么做好吃
双电压逆变直流孤焊机22oV和38ov分别是怎么工
恒温即热式电热水器怎么样
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?