博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java IO输入输出及乱码问题
阅读量:6873 次
发布时间:2019-06-26

本文共 2233 字,大约阅读时间需要 7 分钟。

/**      * 以二进制读出文件内容      * @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技术分享,扫码关注微信公众号##
  • ——只要你学会了之前所不会的东西,只要今天的你强过了昨天的你,那你就一直是在进阶的路上了。

转载地址:http://wslfl.baihongyu.com/

你可能感兴趣的文章
JS 正则表达式用法
查看>>
文档查看cat_more_less_head_tail
查看>>
python课堂笔记之django-day01(4)
查看>>
九月十九日作业
查看>>
Shell工作笔记01
查看>>
项目、软件开发过程中版本术语
查看>>
CSS实现背景透明,文字不透明(各浏览器兼容)
查看>>
【转】[大学引导]超级链接、字体颜色、音乐播放公式
查看>>
T-SQL中INSERT、UPDATE
查看>>
Linux下Nginx服务器配置Modsecurity实现Web应用防护系统
查看>>
linux下搭建 DNS 服务器
查看>>
实战Nginx与PHP(FastCGI)的安装、配置与优化
查看>>
列表去除重复的值
查看>>
CCNP学习之路之VLAN Hopping
查看>>
CentOS6.4内核升级, 2.6.*版本升级 Kernel 3.10.*
查看>>
8.27(文件权限管理 正则表达式)
查看>>
用 zabbix 监测 snmptrap 的主动告警功能
查看>>
HDU1717 小数化分数2
查看>>
delphi 导入excel
查看>>
Linux下 FTP 常见错误 500 530等错误解决方法
查看>>