L
Long John Silver
Gast
Code:
import java.io.*;
public class verschluesselung {
static File klar;
static File chiffre;
static DataOutputStream chiffretext;
public static void main (String args[]) throws IOException{
String zeile;
klar = new File(args[0]);
chiffre = new File(args[1]);
String verschiebung = args[2];
try {
FileReader dateneingabestrom = new FileReader(klar);
BufferedReader klartext = new BufferedReader(dateneingabestrom);
FileOutputStream datenausgabestrom = new FileOutputStream(chiffre);
chiffretext = new DataOutputStream(datenausgabestrom);
zeile = klartext.readLine();
while (zeile != null) {
verschluessle(zeile, verschiebung);
zeile = klartext.readLine();
}
}
catch (IOException e) {
System.err.println(e.toString());
}
}
public static void verschluessle (String s, String a) {
byte geheim[] = new byte[256];
geheim = s.getBytes();
for (int i=0;i<geheim.length;i++) {
if (geheim[i]>90) geheim[i]-=32;
geheim[i]+=Integer.parseInt(a);
if (geheim[i]>=90) geheim[i]-=26;
}
try {
for (int i=0; i<geheim.length; i++) chiffretext.write(geheim[i]);
chiffretext.write('\n');
}
catch (IOException e) {
System.err.println(e.toString());
}
}
}
Wie Ihr seht habe ich hier eine Verschlüsselung erstellt, allerings kommt beim ausführen in java (eclipse) folgende Fehlermeldung:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at verschluesselung.main(verschluesselung.java:14)
An welchem Problem kann oder könnte dass liegen? Muss ich bei RUN irgend etwas in Argumente rein schreiben?