java~ 用DataInputStream(System.in) 的readChar方法不能读到真正的Char值么

如题所述

readChar()方法从二进制流中读取两个字节,返回的是字符类型的数(char)。设 a 为第一个读取字节,b 为第二个读取字节。返回的值是:
(char)((a << 8) | (b & 0xff))
至于读出来的字符是否和开发人员的预期相同,就看个人的操作了
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-09-25
可以读到char,楼上说的那样,你输入一个就是char,多个就是String或者number,你要是想读取一行可用readLine(),DataInputStream最大的好处在于他和编码无关,你可以读取你想读取的类型
第2个回答  2012-09-25
你输入一个就是char,多个就是String或者number

为什么使用DataInoutStream会乱码呢
首先你对DataInputStream这个类根本就不理解,可以去看看api或者相关文档,readChar方法是按照字符的方式从流里面读取,但是你现在不是想读取单独的字符,而是字符串,字符串!=字符 这点希望你是理解的,那么,你按照字符的格式读字符串就会出现乱码,你用我下面的方法再试试:public static void main(Stri...

java输入语句
System.in读取标准输入设备数据(从标准输入获取数据,一般是键盘),其数据类型为InputStream。Scanner in=new Scanner(System.in);是新建一个扫描器,扫描你输入(从标准输入获取数据,一般是键盘)的内容。

在java中怎样从键盘输入数字(新手问题)
static BufferedReader reader;static {in=new InputStreamReader(System.in);reader=new BufferedReader(in);} static String readString(){String s="";try { s=reader.readLine();} catch(IOException e){System.out.println(e);System.exit(0);} return s;} static char readChar(){char ch=...

二进制文件与文本文件相互转化 java实现~
DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream(fileName)));int l=in.readInt(); \/\/你必须要知道你提取的2进制文件里的数据对应的是什么类型的,数据量有多少 \/ System.out.println(dis.available());System.out.println(dis.readBoolean());char c=(char)di...

java有getchar()方法么
楼上在说什么啊。。。getchar()是从控制台读取数据是吧 java里是通过IO输入流来实现的,一个小例子是 Scanner sca=new Scanner(System.in);int i=sca.nextInt();个人感觉这个例子离题意比较近

Exception in thread "main" java.io.EOFException是什么错误呢?_百度...
main方法的改动如下:public static void main(String[] args)throws IOException{ FileOutputStream out1=new FileOutputStream("D:\\\\test.txt");BufferedOutputStream out2=new BufferedOutputStream(out1);DataOutputStream out=new DataOutputStream(out2);out.writeChar('a');out.writeChars("hell...

while(true) 循环从哪跳出去的 怎么没死循环
1. 很明确的讲,本质上之所以不是死循环,是因为读取文件至结尾后,继续读取出现异常,从而跳出了while循环。2. 这是一个很不正规的退出循环的做法。

JAVA Encrypt简单文件加密的程序问题
java Encrypt d:\/scr.txt 300 d:\/dest.txt 分别表示源文件、长度、目标文件。若文件路径含有空格则需要 java Encrypt "d:\/scr.txt" 300 "d:\/dest.txt"那要在运行前设置运行参数的,菜单中除了直接运行的命令,应该还有 设置参数来运行的命令,自己找找。参考资料:还有其他问题的话,给我发百度...

相似回答