java缓冲流写入TXT文件乱码问题

---FileAbout构造方法及变量public class FileAbout { private File f=null; FileAbout(){ this.f=new File("1.txt"); }; FileAbout(String f){ this.f=new File(f); } public File getF() { return f; }-----StudengList构造方法及变量public class StudengList { List<Student> Studentlist=new ArrayList<Student>(); private FileAbout FileAb=null; public StudengList(int a){ if(a==3){ this.FileAb=new FileAbout("3.txt"); }else{ this.FileAb=new FileAbout("4.txt"); } }; public StudengList(){this.FileAb=new FileAbout("未指定.txt");}; public StudengList(String f){ //从文件读入数据 try { File file=new File(f); FileAb=new FileAbout(f); FileAb.FileCreate(); //InputStreamReader read=new InputStreamReader(new FileInputStream(f),"UTF-8"); //FileInputStream bufr=new FileInputStream(file); FileReader in=new FileReader(file); BufferedReader bufr=new BufferedReader(in); String temp=null; while((temp=bufr.readLine()) != null){ String[] student=null; student=temp.split("\t"); Student newstd=new Student(student[0],student[1],student[2],student[3],student[4]); this.Studentlist.add(newstd); } bufr.close(); in.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }

设置成带编码的写入试试:
int a=input.nextInt();
String encoding="utf-8"; // 指定文件写入时采用的字符集(Windows默认是GBK)
ps = new java.io.PrintStream(fout, true, encoding);追问

谢谢 不过不是这个原因,我自己找到了原因,scanner获取键盘按键乱码,myeclipse下运行会乱码,eclipse 不乱码,默认编码我都设置utf8了,scanner 我也指定了编码,可在myclipse 下运行还是乱码。。。

追答

好的,共勉。

追问

😳 😳😳 我想知道怎么处理好伐😁

追答

追问

😓麻烦了

温馨提示:答案为网友推荐,仅供参考
相似回答