Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-02-2010, 18:37   #1
javacomelava
Member
 
Iscritto dal: May 2009
Messaggi: 129
[JAVA] problema con l'input (metodo readLine() )

Salve

Ho un applicazione che per effettuare l'input utilizza il metodo readLine() di
BufferReader.

Il problema è che:

Se lancio l'applicazione da netBeans non ho alcun tipi di problema.
Se lancio l'applicazione da msdos(attraverso un jar che ho creato) il suddetto metodo comincia a darmi problemi.

Il problema è che readLine(),che dovrebbe aspettare che l'utente digiti qualcosa e prema INVIO,non aspetta l'input e va avanti con l'esecuzione del programma.

Ma poi perche se lancio da NetBeans tutto funziona a meraviglia e se lancio da dos tutto va a farsi fregare? Misteri della fede!

Qualcuno che riesce ad illuminarmi ?

Codice:
if (sp != null) {
                    System.out.println("INIZIALIZAZIONE SCANNER PACCHETTI!");
                    Pcap pcap = Pcap.openLive(netDevice.getName(), sp.getQuantiByte(), sp.getFlag(), sp.getTimeout(), errors);

                    /* Controllo sulla variabile pcap: Se pcap=null allora si è verificato qualche problema nell'apertura del
                     * device.Gli errori saranno inseriti nel buffer apposito errors,e quindi stampati a schermo */
                    if (pcap == null) {
                        System.err.printf("ERRORE NELL'APERTURA DEL DEVICE: " + errors);
                    }

                    /* 'espressione' è una stringa contenente il filtro da applicare */
                    System.out.println("Per la sintassi sui filtri: *** http://www.tcpdump.org/tcpdump_man.html ***\n");
                    System.out.println("Inserisci il filto per la sessione di sniffing corrente:");

                    //BufferedReader console = new BufferedReader(new InputStreamReader(System.in));
                    InputStreamReader input = new InputStreamReader(System.in);
                    BufferedReader reader = new BufferedReader(input);
                    String espressione = new String();
                    try {
                        System.out.println("Specifica il filtro:\n");
                        espressione = reader.readLine();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    System.out.println("Premi INVIO per procedere");

                    /* La classe PcapBpfProgram rappresenta un'istanza di un BARKLEY PACKET FILTER PROGRAM   */
                    PcapBpfProgram program = new PcapBpfProgram();
                    int ottimizazione = 1;         // 0 = false (Senza Ottimizazione)
                    int netmask = 0;               // 0 = non specificata.Questa opzione serve a fare ricavare l'indirizzo di broadcast

                    /* Il metodo:
                     *
                     *   compile(PcapBpfProgram program,String str,int optimize,int netmask);
                     *
                     * della classe Pcap.Il metodo compila un programma BPF,impostando un filtro,l'ottimizazione e la netmask.
                     *
                     *  Compila un packet filter,convertendo l'espressione che rappresenta il filtro ad altro livello
                     *  in un programma che può essere interpretato dal filto a livello kernel.(Definizione delle API).
                     *
                     */
                    if (pcap.compile(program, espressione, ottimizazione, netmask) != Pcap.OK) {
                        System.err.println(pcap.getErr());
                        return;
                    }

                    /* La costante Ok è una costante di classe Pcap e vale 0 */
                    if (pcap.setFilter(program) != Pcap.OK) {
                        System.err.println(pcap.getErr());
                        return;
                    }

                    /* Avverte l'utente dell'avvenuta applicazione del filto */
                    System.out.println("Il filtro è stato applicato con successo: " + espressione);

                    JPacketHandler<String> handler = new JPacketHandler<String>() {

                        int c = 0;

                        public void nextPacket(JPacket pacchetto, String usr) {
                            System.out.println(usr + c + " *****");
                            System.out.println(pacchetto.toString());
                            c++;
                        }
                    };

                    /* Metodo che inizia il loop per lo sniffing dei pacchetti */
                    pcap.loop(sp.getNumPack(), handler, "***** PACCHETTO: "); // Esamina tanti pacchetti quanto vale 'numPack'
                /* Chiude la sessione */
                    pcap.close();
                }
javacomelava è offline   Rispondi citando il messaggio o parte di esso
Old 04-02-2010, 00:36   #2
Sfasciacarene
Member
 
Iscritto dal: Feb 2010
Messaggi: 223
Non puoi provare a utilizzare Scanner e nextLine e hasNext etc?
alla breve:
import java.util.scanner;/*(inizio)*/
Scanner input = new Scanner(System.in);
String espressione = "";/*non mi piace molto quel "String = new String();"*/
espressione = input.nextLine();

Sotto terminale linux funziona?
Prova a contrallare le versioni del JDK, avvolte sotto dos ci sono delle diversità nei metodi di input che non sotto linux, ti faccio questo esempio perchè personalmente preferisco quest'ultimo per usare java.
Spero di essere stato utile.
Sfasciacarene è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Nuove informazioni sul fallimento del la...
SpaceX: completato parte dell'assemblagg...
Landspace si prepara al secondo lancio d...
Tutti gli sconti Apple su Amazon: tornan...
Altro che entry-level: due smartwatch Am...
Roscosmos ha posticipato (ancora) il lan...
Isar Aerospace si prepara al secondo lan...
Tory Bruno è entrato in Blue Orig...
Fujifilm lancia la cartuccia per archivi...
Dreame H15 Mix: la soluzione 7-in-1 per ...
AirPods Pro 3 in forte sconto su Amazon:...
36 offerte Amazon, molte appena partite:...
2 caricatori multipli eccezionali: da 28...
OLED e 360 Hz a un prezzo senza preceden...
Roborock Q10 S5+ a un prezzo molto conve...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 20:46.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v