44 votes

Lecture à partir de System.in - Java

Je ne sais pas comment vous êtes censé lire l'entrée du système à partir d'un fichier Java.

Je veux pouvoir appeler java myProg < file

Où le fichier est ce que je veux lire en tant que chaîne de caractères et donner à myProg dans la méthode principale.

Des suggestions ?

0 votes

Quel est le problème exactement ? 1) vous ne savez pas comment démarrer un programme java avec un argument 2) vous ne savez pas comment ouvrir un fichier dans un programme java dont le nom de fichier est un argument de la méthode main. ou 3) les deux.

2 votes

@Fortega ni l'un ni l'autre. Il veut faire entrer un fichier à la place de l'entrée système.

1 votes

Peter, parfois, lire 68 millions de pages, c'est un peu TROP !

1voto

Collin Price Points 991

Vous pouvez appeler java myProg arg1 arg2 ... :

public static void main (String args[]) {
    BufferedReader in = new BufferedReader(new FileReader(args[0]));
}

-3voto

user3765147 Points 13

Vous cherchez probablement quelque chose comme ça.

FileInputStream in = new FileInputStream("inputFile.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(in));

-6voto

Robert Quinn Points 129
class myFileReaderThatStarts with arguments
{

 class MissingArgumentException extends Exception{      
      MissingArgumentException(String s)
  {
     super(s);
  }

   }    
public static void main(String[] args) throws MissingArgumentException
{
//You can test args array for value 
if(args.length>0)
{
    // do something with args[0]
}
else
{
// default in a path 
// or 
   throw new MissingArgumentException("You need to start this program with a path");
}
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X