我正在尝试读取文件,但它只在我的机器上读取,它不能在另一台机器上工作。这是我的代码..
FileInputStream fstream=new FileInputStream("/path of myfile/User.txt");
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String str;
while ((str = br.readLine()) != null) {
System.out.println(str);
}
请帮助我,如何在另一台机器上读取文件,我应该做些什么改变?
答案 0 :(得分:1)
如果要读取驻留在另一台计算机上的文件,则必须使用某种网络服务器(如http服务器或smb-server)来提供该文件。
答案 1 :(得分:1)
我只是猜测你已经找到了一种共享文件的方法,无论是使用HTTP,FTP,SMB还是NFS,但是你遇到了一些问题,也许文本中出现了一些有趣的字符。如果您没有命名要使用的编码,则将使用该计算机的默认编码,如果它们具有不同的默认值,则会遇到问题。
在编写和阅读时选择编码,例如对于UTF8通用编码,您的来源应修改为:
BufferedReader br = new BufferedReader(new InputStreamReader(in, "UTF8"));
当您编写文件时,您当然要使用相同的编码,例如:
FileOutputStream fos = new FileOutputStream("/path of myfile/User.txt");
OutputStreamWriter out = new OutputStreamWriter(fos, "UTF-8");