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)将字符串的各个
相关问答:
我的开发的平台是Myeclipes6.0 + tomcat5.x + mysql
我所有的编码方式都是用的UTF-8
我只用了Strtus框架
在一个form中如下用的是post的提交方式:
<form class="form" action=&quo ......
现在遇到这样一个问题:
在java 中编写swing程序, 添加按钮jbServerStart,目的是当点击jbServerStart时,程序会自动创建两个与其他终端通信的对象,代码如下:
private Container createButtonPane ......
我想使用Lucene的代码,发现要import一批文件:
============
import org.apache.lucene.analysis.standard.StandardAnalyzer;
import org.apache.lucene.document.Document;
………………
===== ......
我的java applet 嵌入html后无法显示,而用appletviewer显示正常为什么,还有就是用html converter转化后可以显示,为什么?请大侠赐教!
HTML code:
<HTML>
<HEAD>
<TITLE>TEST.HTML< ......
我们有项目想组建一个开发团队,
主要用 tomcat,java,struts2,我们的核心成员都是经验非常丰富的系统设计师,
如果您在天津,同时对java比较感兴趣,
可以加入我们。
希望要求
1。爱好编程
......