首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

这段代码为什么会写入的是字符,而不是int

2013-06-26 
这段代码为何会写入的是字符,而不是intpackage streamimport java.io.IOExceptionimport java.io.FileW

这段代码为何会写入的是字符,而不是int;

package stream;

import java.io.IOException;
import java.io.FileWriter;

public class FileWriterTest {

public static void main(String[] args)
{
try
{
FileWriter fw = new FileWriter("D://demo/test.txt");

char c1 = 'a';
char c2 = '国';
char c3 = 'b';

fw.write((int)c1);
fw.write((int)c2);
fw.write((int)c3);

fw.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}


在write的时候,已经将字符转换成了int类型,为什么在记事本中写入还是字符,而不是对应的数字?
如果要写入数字,该怎么操作呢?
[解决办法]

            fw.write((int)c1 + "");
            fw.write((int)c2 + "");
            fw.write((int)c3 + "");

[解决办法]
public void write(int c) 写入单个字符。
这是jdk文档的解释,要想输出转换后的数字可以用public void write(String str).

fw.write(String.valueOf((int) c1));
            fw.write(String.valueOf((int) c2));
            fw.write(String.valueOf((int) c3));

热点排行