Se l'input è interattivo, ad esempio dalla console, voglio stampare un prompt dei comandi, ad es. ">"C'è un modo per determinare se Java System.in è "interattivo"?
Ma se viene reindirizzato ad es. da un file, quindi non voglio richiedere.
System.in è un InputStream astratto che non sembra avere alcun metodo per questo.
Forse potresti usare instanceof se il tipo di calcestruzzo è diverso?
Come pure, se System.out viene reindirizzato a un file anche io non voglio per richiedere
Per una soluzione specifica per Linux usando JNI, vedi [qui] (http://stackoverflow.com/a/18371202/446591). Dovresti solo cambiare 'fileno (stderr)' in 'fileno (stdin)'. –
possibile duplicato di [Come posso verificare se i flussi di input/output di un programma Java sono collegati a un terminale?] (Http://stackoverflow.com/questions/1403772/how-can-i-check-if-a-java -programmi-input-output-flussi-sono-collegati-a-termine) –