一个奇怪的问题! 本帖最后由 jiangfei66 于 2011-02-15 11:13:05 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Scanner沒用過,不過這個情況確實很奇怪,期待高手 附:输入字母或数字正常,输入汉字后再输入quit会没用 我用BufferedReader.readLine()尝试接收中文字符,但都会出现多余的字符 我的输出是下面这样的,没有出现你所说的情况,如果有问题的话,一般都是跟字符长度方面相关的问题,现在我这重现不了你的问题哦,你再看下是否跟jdk版本或者电脑设置方面有关。。 祝你能解决。输入名称(使用quit结束)# 我# 是# 中# 国# 人# quit显示输入:[我, 是, 中, 国, 人]我 是 中 国 人 是的,我也遇见了这样的情况,而且按4楼的输入还是输出了字母。我把你的程序的输入输出机制改成了[align=center]private static BufferedReader stdIn= new BufferedReader(new InputStreamReader(System.in)); private static PrintWriter stdOut= new PrintWriter(System.out,true);[/align]还是不行,可能就是jdk版本或者电脑设置方面的问题吧。 这只是 Eclipse Console 视图或者输入法的 bug,在处理输入时你得有点耐心,比如我输入第一个三时按 Enter 之后,光标出现的位置在第二行的 # 之前,这时就会出错,在# 之前应该是不允许输入才对,不知道什么原因会出现这样,以前我输入英文时也发现了会出现在#之前的问题,但输入的不是汉字所以没出错。如果我们把光标移到后面的输入位置的话就正确了。在这里面 # 是 System.out 输出的内容,似乎光标在 # 前面时某个神秘的缓冲区位置有问题。输入名称(使用quit结束)# 三# 二# 三# quit# quit显示输入:[三, fg二, fdg三, dquit]三 fg二 fdg三 dquit 去掉这一句就没问题 System.out.print("# "); 正解,在调试状态下也能输出正确的结果,这像是eclipse 执行线程之间问题 我发现只要你把System.out.print("# ");删去就没问题了,也就是说每一行只有输入的字符,没有前面那个“# ”。我估计是因为符号和汉字有冲突吧。 关于文件改名和解压的问题 怎么让一个线程执行好了再执行另外一个线程? 求最优算法---关于字符串数组的问题 200分求 windows2003 snmp的cpu、内存、网络流量等的oid及资料 java的叫jni语法。 JApplet和Swing有什么差别? 多层继承的问题 想看demo,可是有的有问题?怎么回事啊? 简单问题(在线等待) 再加00分,一共200分,是下面提过的问题 request.getParameter()接受的数据为什么为空啊 log4j的问题
不過這個情況確實很奇怪,
期待高手
# 我
# 是
# 中
# 国
# 人
# quit
显示输入:[我, 是, 中, 国, 人]
我 是 中 国 人
[align=center]private static BufferedReader stdIn=
new BufferedReader(new InputStreamReader(System.in));
private static PrintWriter stdOut=
new PrintWriter(System.out,true);[/align]
还是不行,可能就是jdk版本或者电脑设置方面的问题吧。
# 三
# 二
# 三
# quit
# quit
显示输入:[三, fg二, fdg三, dquit]
三 fg二 fdg三 dquit
System.out.print("# ");
正解,在调试状态下也能输出正确的结果,这像是eclipse 执行线程之间问题