Java RandomAccessFile 写入txt文件 - Java / Java SE
用RandomAccessFile写入TXT文件查看时是乱码,请问有什么方法可以写成可读的文件,不是用其他的文件操作,就是只用RandomAccessFile的方法是否可以实现?
Java code:
import java.io.*;
public class RandomAccessFileDemo
{
public static void main(String[] args) throws IOException
{
RandomAccessFile raf=new RandomAccessFile("random.txt","rw");
raf.writeBoolean(true);
raf.writeInt(2008);
raf.writeChar('年');
raf.writeDouble(08.08);
raf.writeUTF("欧林匹克运动会");
raf.seek(1);
System.out.println(raf.readInt());
System.out.println(raf.readChar());
System.out.println(raf.readDouble());
System.out.println(raf.readUTF());
raf.seek(0);
System.out.println(raf.readBoolean());
raf.close();
}
}
这种乱码一般都是因为字符串的编码或者字符串转换字节的时候编码不同而引起的。所以首先最好对要写入文件的字符串或者流都进行一遍编码设定。
1、String.getBytes()将会按照当前系统默认的encoding方式获得字符串的 Bytes,RandomAccessFile.write(byte[])将这个byte数组正确写入。由于写入的实际就是Windows平台的 nativecode编码,所以文件还能够被正确的阅读。
2、RandomAccessFile.writeBytes(String)将字符串的各个字符(当然是用unicode编码的)的高8位去掉,写入文件。
3、RandomAccessFile.writeChars(String)将字符串的各个
相关问答:
不知道是什么原因,我该如何处理,请大虾们指教了,小弟在此谢过。。。。
错误信息如下:
The program being debugged was signaled while in a function called from GDB.
GDB has restored the context t ......
我在eclipse中写了一个播放音乐的类,并把音乐文件和类文件放在了一起,结果运行时,出现错误,说是音乐文件那个是空的,但是在jcreator用同样的方法结果是可以运行的,请求高说指教,告诉为什么?急
你若是在Windo ......
import java.io.*;
class FileTest
{
public static void main(String [] args) throws Exception
{
File fDir=new File(File.separator);
String strFile="java源代码测试"+File.separato ......
如题。
遥遥无期啊,买房难啊
22世纪吧,,,
明天就可以,但是明天永远是明天啊!!!!
买房?不是it民工想的。
加油吧~``
我觉得也是 房自己随便盖一个既是.... 买咱是别想了 ......
我们有项目想组建一个开发团队,
主要用 tomcat,java,struts2,我们的核心成员都是经验非常丰富的系统设计师,
如果您在天津,同时对java比较感兴趣,
可以加入我们。
希望要求
1。爱好编程
......