日期:2014-05-18  浏览次数:20891 次

用FileReader读取本地html文件的问题,怎么把其中的html标签给去掉?
用以下代码读取本地一个html的文件:
FileReader   fr=new   FileReader( "C:\\2005年我国医药类产品出口增长近30%.htm ");
int   c=fr.read();//从文件中读取一个字符  
//判断是否已读到文件结尾  
while(c!=-1){  
        out.print((char)c);//输出读到的数据  
        c=fr.read();//从文件中继续读取数据  
        if(c==13){//判断是否为断行字符  
            out.print( " <br> ");//输出分行标签  
            fr.skip(1);//略过一个字符  
            c=fr.read();//读取一个字符  
        }  
}  
fr.close();    

但是读取之后显示了很多类似:Times   New   Roman " '> 年我国医药类产品进出口总额达到256.4style= 'font-family:宋体;mso-ascii-font-family: "Times   New   Roman ";mso-hansi-font-family:
"Times   New   Roman " '> 亿美元,其中进口118.4style= 'font-family:宋体;mso-ascii-font-family: "Times   New   Roman ";mso-hansi-font-family:
这样的代码。请高手看看怎么解决。



------解决方案--------------------
看到你的帖子有点晕,能不能说的清晰点,比如你的html内容,你要达到的目的,遇到的问题。
------解决方案--------------------
javascript中使用正则表达式:

<SCRIPT LANGUAGE= "JavaScript ">
<!--
var str = " <b> 1111 <u> 2222 <i> 3333 </i> </u> </b> ";
//str = str.replace(/ <[^> ]+> /g, " ");
str = str.replace(/ <(.*)> .* <\/\1> /, " ");
alert(str);
//-->
</SCRIPT>

或者:http://www.cnyesoft.com/blog/article.asp?id=38