如题,HTML文件中前五行为
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">.b1{white-space-collapsing:preserve;}
.d1{margin: 1.0in 1.25in 1.0in 1.25in;}
现需将第五行内容变为
.d1{margin: 0 200px 0 0;}
我使用
FileInputStream ism = new FileInputStream(文件名);
InputStreamReader isr = new InputStreamReader(ism);
BufferedReader bs = new BufferedReader(isr);
能读取到html中的内容,但是新建写入类OutputStream out = new FileOutputStream(文件名)时,html中所有内容就会全部消失,
bs输出也变为null
求大神帮助,如何解决
第五行内容.d1{margin: 1.0in 1.25in 1.0in 1.25in;} 不一定是这个样子,也可能是.d2{margin: 1.0in 1.25in 1.0in 1.25in;}
也就是说1.0in 1.25in 1.0in 1.25in这几个字符串是绝对不变的,我现在想把它们更改为0 200px 0 0
请问如何替换?要新建一个OutputStream写入类吗
追答新建一个file吧,然后写进去。或者源文件如果可以读写的话,定义流的时候,在后面加上true,然后你再output 进去。
追问谢谢谢谢,加上true以后可以成功读取写入了,但是我还是替换不了。。还请大神帮助。。谢谢谢谢。 我现在是这样写的
在while(in_.readLine){
if(br.readline().contain("margin")){
}
}
if里面代码应该怎么写才能成功替换?
现在输出流定义的OutputStream out = new FileOutPutStream(文件名,true)
个人建议,你还是把文件读出来,新建一个文件,把相应的替换过的内容,直接写进去。
追问这样吗。。那有方法在原文件中修改吗?
追答那你就一边读,一边写吧,写到那一句的时候,就是if那里,写的时候替换一下。