java写的一段程序,输出结果全是问号,请高手指教

public class Pword {
public String asctoString(String st) {
int offset = 0;
int strlen = 0;
int i = 0;
int ch = 0;
String tem = "";
String ptext = "";
tem = st;
strlen = st.length();
byte bytes[] = st.getBytes();
for (i = 0; i < strlen; i++) {
ch = bytes[i];
if (ch >= 32 && ch <= 126) {
ch+=32;
if ((ch - 95) < 0) {
ch = ch - 95;
}
offset = (int) (96 * Math.random());
//System.out.println(offset);
int tmp;
for (tmp = 0; tmp <= 94; tmp++) {
if (tmp % 95 == ch) {
ch = tmp + offset;
ch-=32;
}
}
}
ptext += (char)ch;
}
return ptext;
}
public static void main(String[] args) {
Pword qqp=new Pword();
String ss="123456";
System.out.print(qqp.asctoString(ss));
}
}

这段代码很容易就把一个字符的ascii码搞得小于32或大于128,ascii码小于32和大于128的字符要么不能显示,要么就是不存在的字符,没办法显示,只能显示问号了。

有的程序没法显示的字符显示为黑块或方框
温馨提示:内容为网友见解,仅供参考
第2个回答  2010-08-17
不知道你想怎么处理这个字符串,要有目的性
第17行,明显ch都成负值了,char显然乱码了。

java写的一段程序,输出结果全是问号,请高手指教
这段代码很容易就把一个字符的ascii码搞得小于32或大于128,ascii码小于32和大于128的字符要么不能显示,要么就是不存在的字符,没办法显示,只能显示问号了。有的程序没法显示的字符显示为黑块或方框

我在Java编程的时候出现以下问题,请高手指教
应该放在 Simulation的run方法的最末尾。System.out.println("Started...");应该放在 Simulation的run方法的最前面。

...又不知道是哪里错了,黄色的那行代码,请高手指教
首先,你的问题在于,既有代码,为何发个图片上来,如果有代码上来,帮你解题的人也可以复制下来进行本机调试,何苦有了代码还劳烦别人再写。更何况,再写的代码也不完全就跟你上面的代码一模一样,又如何发现你代码的错误呢?其次,你代码的问题,依我看,不止一处,不要纠结于那一行。譬如,g为文...

自己写的java小程序哪里错了?高手指教!
public static void main(String[] args) { int mat[][] = new int[4][4];for (int i = 0; i < 4; i++) { mat[0][i] = 0;} for (int i = 1; i < 4; i++) { for (int j = 3; j >= i; j--)mat[i][j] = mat[i - 1][j] + 1;for (int j = 0...

java cannot find symbol,还请高手指教一下代码应该怎么改!
导入包错误,应该是 import java.awt.*;如果用命令行运行applet小程序,需要编译后的 .class插入到html中 用记事本写上如下代码,然后将文件名后缀 .txt改成 .html,.html文件和.class文件一定要放在同一目录下,用浏览器打开或者用appletviewer *.html (*是你刚才记事本的文件名) ...

一道简单的有关数组的Java程序题,请高手前辈们帮忙查看一下代码,谢谢...
一道简单的有关数组的Java程序题,请高手前辈们帮忙查看一下代码,谢谢! 题目:编写一个工具类,该工具类内包含一个数组属性,可以调用该工具类的add()方法向该工具类中的数组里添加元素,添加的元素可以是任意类型,调用get(下标)方法可以取出某个元素,调... 题目:编写一个工具类,该工具类内包含一个数组属性,可以...

php程序请高手指教 我写了一段PHP代码,对一长串数字进行奇偶判断。要求...
先用str_split 把数字分开 再定义个变量随着奇偶变化 最后用正则表达式 输出就好了

...出来的都是问号,不知道用什么代码转换,有高手指教下!
HTML编码使用UNICODE或UTF8应该就可以了。如果数据库是中文的,并且从数据库拉过来的数据也是乱码的话,那就要在设定数据表字段的时候要使用NCHAR、NVARCHAR或NTEXT等支持UNICODE形式的类型。

我是一个java初学者,写了份作业但有两处错误找不出来,请哪位高手指教指...
import java.util.Random;public class evaluation { public static int[] array1(int n) { int array[] = new int[n];for (int i = 0; i <= array.length; i++)array[i] = (int) (Math.random() * 100);return array;} public static void getarray(int array[]) { for (int...

...io.IOException:不知道这是什么意思!请高手指教!!
运行时的IO异常么,输入输出的时候出现了错误,围绕这块慢慢排查,找到了你会发现很有成就感的 findDomainByName这个方法好像参数无效 在看看Test_ApplicationManager1是不是写错了什么

相似回答