版权声明:https://blog.csdn.net/weixin_40811410 https://blog.csdn.net/weixin_40811410/article/details/81950570
/**
* 以二进制读出文件内容
* @param file
* @return
* @throws IOException
*/
private static byte[] readFileBytes(File file) throws IOException {
byte[] arrayOfByte = new byte[1024];
ByteArrayOutputStream localByteArrayOutputStream = new ByteArrayOutputStream();
FileInputStream fis = new FileInputStream(file);
while (true) {
int i = fis.read(arrayOfByte);
if (i != -1) {
localByteArrayOutputStream.write(arrayOfByte, 0, i);
} else {
return localByteArrayOutputStream.toByteArray();
}
}
}
下面是我从两个不同的Java文件中得到的代码。 一个是”文件”与主类,另一个是”filewrite”。”
我可以实现字符串输入和输出。 但输出文件在开头有乱码,我不确定为什么。
[File.Java ]
package file;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class File
{
public static void main(String[] args)
{
try(BufferedReader br =new BufferedReader(newFileReader("B:fileIn.txt")))
{
String stCurrent;
while((stCurrent = br.readLine())!=null)
{
System.out.println(stCurrent);
}
}catch(IOException e)
{
e.printStackTrace();
}
FileWrite fW =newFileWrite();
fW.serializeAddress("Boston","Canada");
}
}
[FileWrite.Java ]
package file;
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
public class FileWrite
{
public void serializeAddress(String city,String country)
{
try
{
FileOutputStream fout =new FileOutputStream("B:address.txt");
ObjectOutputStream obOut =new ObjectOutputStream(fout);
obOut.writeUTF(city);
obOut.writeUTF(country);
obOut.close();
System.out.println("Output Done");
}catch(Exception ex)
{
ex.printStackTrace();
}
}
}
使用了obOut.writeUTF(country);”
那么久对应的使用obOut.writeUTF(city, counry) 中。
PrintStream ps =new PrintStream(newFileWriter("B:addressPS.txt"));
ps.println(city);
ps.println(country);
ps.close();
YunSoul技术分享,扫码关注微信公众号
-
——只要你学会了之前所不会的东西,只要今天的你强过了昨天的你,那你就一直是在进阶的路上了。