用PrintWriter向文件输出后为什么不能修改? 那位高手帮忙看一下?谢了 我用PrintWriter输出 生成一个新的文件但不能修改 一修改就会去掉原来的回车符 使原本分好行的纪录首尾相连怎么回事? 怎么解决? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不行呀输出只是各记录之间多了个空格例如dsfslkfjasdfsasadfsadf输出后dsfslkfj asdfsa sadfsadf而我想要得是dsfslkfjasdfsasadfsadf怎么弄? 我的程序如下 多指教import java.io.*;import java.util.*;class test { public static void main(String args[]) throws IOException{ String s; StringBuffer sb=new StringBuffer(); BufferedReader file=new BufferedReader(new FileReader(args[0])); PrintWriter filew=new PrintWriter(new BufferedWriter(new FileWriter("D:\\"+args[0]))); LinkedList link=new LinkedList(); while((s=file.readLine())!=null) { int count = 0; sb.delete(0,sb.length()); for( int len=4; len<s.length(); len++) { sb.append(s.charAt(len)); if(s.charAt(len)=='|') { if(count==0) { while(s.charAt(len+1)!='|') { len+=1; } sb.append("洛阳市"); } if(count==1) { sb.append("471000"); } if(count==2) { sb.append("037964971716"); } if(count==3) { if(s.charAt(len+1)=='|') sb.append("1"); } if(count==4) { if(s.charAt(len+1)=='|') {sb.delete(0,sb.length()); len=s.length(); }} if(count==6) { sb.append("7461"); for(int z=0; z<10; z++) { sb.append(s.charAt(len+1)); len++; } sb.append("01"); len+=5; } if(count==11) { if(s.charAt(len+1)=='|') sb.append("4930"); } count++; } } sb.append("\r\n"); s=sb.toString(); link.add(s); } file.close(); try { int c=0, i=0; while((link.getFirst())!=null) { if (args.length==2) { while(i<=link.getFirst().toString().length()-args[1].length()) { String news=link.getFirst().toString().substring(i,i+args[1].length()); if (news.equalsIgnoreCase(args[1])) { System.out.println(link.getFirst()); break; } else { i++; } } } filew.println(link.getFirst()); link.removeFirst(); } } catch(NoSuchElementException e ) { System.out.println("have done"); } filew.close(); }} 求一套用于练习的java编程习题 高分求解俩个小问题! 怎样打印出一个文件的递归层次结构 请教ObjectOutputStream中flush和drain方法的根本区别 java文件读写问题 xml文件中如何存放图片? 请帮初学者看看这段简单的代码!感激t0 安装jbuilder6后,运行时提示'Unknown license file format', WHY? java.util.Date类型向java.sql.Date类型转换之间的一个小问题,请大家进来看看 求问 用Java UDP写的程序如何与C语言写的程序聊天 问一个偶然遇到的问题,定义的java变量上划一个横线是什么意思?
输出只是各记录之间多了个空格
例如
dsfslkfj
asdfsa
sadfsadf
输出后
dsfslkfj asdfsa sadfsadf
而我想要得是
dsfslkfj
asdfsa
sadfsadf
怎么弄? 我的程序如下 多指教
import java.io.*;
import java.util.*;
class test {
public static void main(String args[]) throws IOException{
String s; StringBuffer sb=new StringBuffer();
BufferedReader file=new BufferedReader(new FileReader(args[0]));
PrintWriter filew=new PrintWriter(new BufferedWriter(new FileWriter("D:\\"+args[0])));
LinkedList link=new LinkedList();
while((s=file.readLine())!=null) {
int count = 0; sb.delete(0,sb.length());
for( int len=4; len<s.length(); len++) {
sb.append(s.charAt(len));
if(s.charAt(len)=='|') {
if(count==0)
{ while(s.charAt(len+1)!='|')
{ len+=1; }
sb.append("洛阳市");
}
if(count==1)
{ sb.append("471000"); }
if(count==2)
{ sb.append("037964971716"); }
if(count==3)
{ if(s.charAt(len+1)=='|')
sb.append("1"); }
if(count==4)
{ if(s.charAt(len+1)=='|')
{sb.delete(0,sb.length()); len=s.length(); }}
if(count==6)
{ sb.append("7461");
for(int z=0; z<10; z++)
{ sb.append(s.charAt(len+1)); len++; }
sb.append("01"); len+=5;
}
if(count==11)
{ if(s.charAt(len+1)=='|')
sb.append("4930"); }
count++;
}
}
sb.append("\r\n");
s=sb.toString();
link.add(s);
}
file.close();
try { int c=0, i=0;
while((link.getFirst())!=null) {
if (args.length==2) {
while(i<=link.getFirst().toString().length()-args[1].length()) {
String news=link.getFirst().toString().substring(i,i+args[1].length());
if (news.equalsIgnoreCase(args[1])) {
System.out.println(link.getFirst());
break;
}
else { i++; }
}
}
filew.println(link.getFirst());
link.removeFirst();
}
}
catch(NoSuchElementException e ) { System.out.println("have done"); }
filew.close();
}
}