【发布时间】:2011-09-01 07:44:52
【问题描述】:
我正在使用 Java 修改文件。这是我想要完成的:
- 如果在读取时检测到 & 符号和整数,我想删除 & 符号并将整数转换为二进制。
- 如果在读取时检测到 & 符号以及(随机)单词,我想删除 & 符号并将单词替换为整数 16,并且如果正在使用不同的字符串& 符号,我想将数字 1 设置为大于整数 16。
这是我的意思的一个例子。如果输入的文件包含这些字符串:
&myword
&4
&anotherword
&9
&yetanotherword
&10
&myword
输出应该是:
&0000000000010000 (which is 16 in decimal)
&0000000000000100 (or the number '4' in decimal)
&0000000000010001 (which is 17 in decimal, since 16 is already used, so 16+1=17)
&0000000000000101 (or the number '9' in decimal)
&0000000000010001 (which is 18 in decimal, or 17+1=18)
&0000000000000110 (or the number '10' in decimal)
&0000000000010000 (which is 16 because value of myword = 16)
这是我目前尝试过的,但还没有成功:
for (i=0; i<anyLines.length; i++) {
char[] charray = anyLines[i].toCharArray();
for (int j=0; j<charray.length; j++)
if (Character.isDigit(charray[j])) {
anyLines[i] = anyLines[i].replace("&","");
anyLines[i] = Integer.toBinaryString(Integer.parseInt(anyLines[i]);
}
else {
continue;
}
if (Character.isLetter(charray[j])) {
anyLines[i] = anyLines[i].replace("&","");
for (int k=16; j<charray.length; k++) {
anyLines[i] = Integer.toBinaryString(Integer.parseInt(k);
}
}
}
}
我希望我表达得足够清楚。有关如何完成此任务的任何建议?
【问题讨论】:
-
您要检测
&还是%? -
很抱歉 - 现在是正确的
标签: java file binary character integer