Java Scanner läuft auf Linux nicht?

4 Antworten

servus! :)

Scanner nutzt standardmäßig die textkodierung der aktuellen locale-einstellung des systems.

finde erst mal heraus, welche kodierung deine datei hat und wenn es z. B. UTF-8 ist, übergebe diese deinem Scanner als zweites argument:

Scanner sc = new Scanner(config, "UTF-8");

Die kodierung deiner datei findest du auf der kommandozeile mit ...

chardet datei.txt

... oder falls das bei dir nicht installiert ist, als notlösung mit ...

file datei.txt

... raus.

wenn es dann immer noch nicht funktioniert, liegt der fehler vermutlich in deiner "config" variable. :)

Woher ich das weiß:
eigene Erfahrung

Wahrscheinlich liegt das am Line Separator.

Ich nehme an, die Datei wurde auf Windows erstellt? Windows verwendet einen anderen line Separator als Linux.

Was genau passiert, wenn du es versuchst?

4

nichts es gibt keinen output

0
38
@Fabsi102938

Ist config.exists() true?

Ist config.canRead() true?

Gibt es bei Durchlauf der Datei nie einen Output? Gibt es eine Endlosschleife?

0

Java: Schere-Stein-Papier mit Best-Of-3?

Hallo liebe Com,

ich habe hier ein SSP-Spiel programmiert, aber wollte noch ein Best-Of-3 System einbauen. Ich habe schon versucht die erste while Schleife in eine while Schleife zu stecken, das hat aber nicht funktioniert. Wie geht das ganze? Hier der Code: public class SchereSteinPapier {

public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Random ran = new Random(); System.out.println("Wähle zwischen: 1=Schere; 2=Stein; 3=Papier.");

int pc;
int user;
int z;
z=1;


 
  
while (z==1) { 
  pc = ran.nextInt(3)+1;
  user = scanner.nextInt();
  if (pc == user) {
     System.out.println("Unentschieden");
  } 
  
  if (pc != user) {
    if (pc==1 && user==3 || pc==2 && user==1 || pc==3 && user == 2) {
      System.out.println("Verloren");
    } // end of if
    if (pc==3 && user ==1 || pc==1 && user==2 || pc==2 && user==3) {
      System.out.println("Gewonnen");
    } // end of if
  } // end of if
  z++;
  } // end of if
} // end of while

} // end of main

...zur Frage

Was möchtest Du wissen?