Je n'arrive pas à faire en sorte que mon programme Java puisse lire les fichiers texte.Bufferedreader et InputStreamReader
public static void main(String[] args) throws java.io.IOException {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
try {
long base = Long.parseLong(args[0]);
String input = br.readLine(); //read first line till the end of file
long list = Long.parseLong(input);
convertBase(base, list);
}
finally {
br.close();
}
}
Le programme fonctionne lorsque je tape manuellement les valeurs dans la ligne de commande, mais lorsque je tente d'utiliser un fichier texte, il jette des exceptions:
Exception in thread "main" java.lang.NumberFormatException: For input string: "baseconverion.txt"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Long.parseLong(Long.java:589)
at java.lang.Long.parseLong(Long.java:631)
at FromDecimal.main(FromDecimal.java:46)
Je ne sais pas ce que je fais mal/manquants .
Vous devez imprimer 'input' avant d'essayer de le traiter - vous pourriez être surpris par son contenu. – alfasin
Vous essayez d'analyser un nom de fichier en tant que 'long'. Solution: ne pas. NB 'readLine()' ne lit pas la première ligne jusqu'à la fin du fichier. Pourquoi essayez-vous d'analyser un fichier texte en tant que «longs» en premier lieu? – EJP
Je dois analyser les longs parce que j'ai une autre méthode où je convertis le nombre décimal en base –