A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

RandomAccessFile

        RandomAccessFile(随机访问文件)类的实例支持对随机访问文件的读/写。随机访问文件就像存储在文件系统中的巨大的字节数组,通过游标或者索引(叫做文件指示器)指向这个暗含的数组,输入操作从指示器处读取字节,然后前进指针。如果随机访问文件以可读/写模式创建,那么还支持输出操作,输出操作写到暗含数组的尾端,使得数组得以扩展。



随机访问文件,将文件内容输出,并写入两个字符“O”“K若文件内容直接输出到屏幕上,则出现上半部分乱码问题,添加一个parseChinese方法后,得以修正。源程序代码如下:
//程序文件名为UseRandom.java
import java.io.*;
public class UseRandom
{
public static void main(String[] args)
{
try
{
        //构建随机访问文件对象
       RandomAccessFile f = new RandomAccessFile("Hello.txt","rw");
       //得到文件指针和长度
       long flag = 0;
       long len = f.length();
       //字符处理后输出
       while(flag <len)
       {
          String s = f.readLine();
System.out.println(parseChinese(s));
flag = f.getFilePointer();
}
              //末尾写入字符
f.writeChar('O');
f.writeChar('K');
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
}
//解决中文转换问题
public static String parseChinese(String inStr)
{
String s = null;
byte temp[];
if (inStr == null)
{
return new String("");
}
try
{
temp=inStr.getBytes("iso-8859-1");
s = new String(temp);  
}
catch(UnsupportedEncodingException e)
{
System.out.println (e.toString());
}
return s;
       }
};








评分

参与人数 1技术分 +1 收起 理由
唐志兵 + 1 赞一个!

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马