java对文件编写明文密文问题
编写一个程序对输入文件进行加密或解密后输出新的文件,比如说a加密后为c,b为k以此类推。publicstaticfinalStringALPHABET="abcdefgh...
编写一个程序对输入文件进行加密或解密后输出新的文件,比如说a加密后为c,b为k以此类推。
public static final String ALPHABET = "abcdefghijklmnopqrstuvwxyz";
public static final String REPLACEMENT = "ckdlurmxnwvehbayoifgqzjstp";
这是我打的 还有问题怎么修改啊
public static String encodeLine(String line){
String A = null;
for(int i = 0;i<line.length();i++) {
for(int j = 0;j<ALPHABET.length();j++) {
if(line.charAt(i) == ALPHABET.charAt(j) ) {s
ALPHABET.charAt(i) = REPLACEMENT.charAt(j);
} else {
}
}
}
return A;
} 展开
public static final String ALPHABET = "abcdefghijklmnopqrstuvwxyz";
public static final String REPLACEMENT = "ckdlurmxnwvehbayoifgqzjstp";
这是我打的 还有问题怎么修改啊
public static String encodeLine(String line){
String A = null;
for(int i = 0;i<line.length();i++) {
for(int j = 0;j<ALPHABET.length();j++) {
if(line.charAt(i) == ALPHABET.charAt(j) ) {s
ALPHABET.charAt(i) = REPLACEMENT.charAt(j);
} else {
}
}
}
return A;
} 展开
3个回答
2014-03-20
展开全部
看样子你是想把输入的字母 根据ALPHABET 码字表 换成 REPLACEMENT 里的内容。比如输入了“fuck”,那么转换以后差不多是 “rfdw” 对吧。如果这样的话。你的问题错在
for(int i = 0;i<line.length();i++) {
for(int j = 0;j<ALPHABET.length();j++) {
if(line.charAt(i) == ALPHABET.charAt(j) ) {s
ALPHABET.charAt(i) = REPLACEMENT.charAt(j);//这里错了。目的是要替换line的第i个字符 } else {
}
}
可以改成:
String A="";
for(int i = 0;i<line.length();i++) {
int x = ALPHABET.indexOf(line.charAt(i));
if(x > 0)
A+= REPLACEMENT.charAt(i);
else
A+= line.charAt(i);
}
return A;
for(int i = 0;i<line.length();i++) {
for(int j = 0;j<ALPHABET.length();j++) {
if(line.charAt(i) == ALPHABET.charAt(j) ) {s
ALPHABET.charAt(i) = REPLACEMENT.charAt(j);//这里错了。目的是要替换line的第i个字符 } else {
}
}
可以改成:
String A="";
for(int i = 0;i<line.length();i++) {
int x = ALPHABET.indexOf(line.charAt(i));
if(x > 0)
A+= REPLACEMENT.charAt(i);
else
A+= line.charAt(i);
}
return A;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-03-20
展开全部
public class Test {
public static final String ALPHABET = "abcdefghijklmnopqrstuvwxyz";
public static final String REPLACEMENT = "ckdlurmxnwvehbayoifgqzjstp";
public static void main(String args[]){
String s = "dfgdhhjg";
System.out.println(encodeLine(s));
}
public static String encodeLine(String line) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < line.length(); i++) {
char c = line.charAt(i);
for (int j = 0; j < ALPHABET.length(); j++) {
if (c == ALPHABET.charAt(j)) {
c = REPLACEMENT.charAt(j);
break;
}
}
sb.append(c);
}
return sb.toString();
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static String encodeLine(String line){
String A = "";
for(int i = 0;i<line.length();i++) {
for(int j = 0;j<ALPHABET.length();j++) {
if(line.charAt(i) == ALPHABET.charAt(j) ) {
A =A+ REPLACEMENT.charAt(j);
} else {
}
}
}
return A;
}
String A = "";
for(int i = 0;i<line.length();i++) {
for(int j = 0;j<ALPHABET.length();j++) {
if(line.charAt(i) == ALPHABET.charAt(j) ) {
A =A+ REPLACEMENT.charAt(j);
} else {
}
}
}
return A;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询