Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-05-2004, 08:05   #1
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
JAVA STRINGHE

Ciao a tutti utilizzo i socket ed ho un po di casini perche devo inviare due codici e non so come distinguerli...
qualcuno sa aiutarmi??

allora il mio server riceve queste due stringe per esempio:

"0B00000034D4D602"
e
"Apri"
ora la prima e il codice di un ibutton la seconda e un comando...
per ora io avevo creato due if:

if(str.equals("0B00000034D4D602")){
String IDUtente = "0B00000034D4D602";
String IDPorta = "5B0000018A1B5409";
verificaAccessi(IDUtente, IDPorta);
if(str.equals("Apri")){
System.out.println("Ho ricevuto la richiesta di apertura della porta");
ApriPorta();
}

solo che strutturato cosi non va bene siccome il giorno in cui avro 200 utenti dovro mettere 200 if fatti cosi:

if(str.equals("0B00000034D4D602")){
String IDUtente = "0B00000034D4D602";
String IDPorta = "5B0000018A1B5409";
verificaAccessi(IDUtente, IDPorta);
if(str.equals("0E0000008F33A802")){
String IDUtente = "0E0000008F33A802";
String IDPorta = "5B0000018A1B5409";
verificaAccessi(IDUtente, IDPorta);

}
....ecc
quindi come faccio a far capire al server in modo semplice veloce e sicuro che la stringa fatta cosi:"0E0000008F33A802"(per esempio)
e un codice e nn un comando???
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:02   #2
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
non puoi far sì che il server non riceva dal client solo una stringa tipo 0B00000034D4D602 o Apri ma anche l'indicazione di cosa significano?


tipo:

<utente>0B00000034D4D602</utente>
<cmd>Apri</cmd>


così facendo nel server puoi discriminare piu' facilemente se si tratta di un comando o dell'id utente.

Di porta ne hai solo una? In caso negativo come la associ all'utente?
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:16   #3
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
devo gestire 8 porte...tutte sono identificate da un codice...ma il mio client deve inviare al serer sia il comando che il codice ibutton...pensavo di mettere un prefisso davanti alla stringa ma nn funziona...in che senso <comando></comando>?
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:23   #4
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da anna182
devo gestire 8 porte...tutte sono identificate da un codice...ma il mio client deve inviare al serer sia il comando che il codice ibutton...pensavo di mettere un prefisso davanti alla stringa ma nn funziona...in che senso <comando></comando>?


nel senso che il client spedisce al server anche una stringa che gli dice cosa contiene quello che gli sta mandando (un comando, un codice, ecc.).


Non ho capito una cosa: il client manda al server un nome di un comando e il codice di un utente. Come fai ad associare l'utente alla porta?
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:33   #5
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
Allora il mio client legge il codice di un bottone (ogni utente e associato ad un bottone quindi potro avere anche 200 utenti..) quando ha letto il codice lo invia al server. il server effettua un controllo all'interno di un file txt:

(ID PORTA) 5B0000018A1B5409;
(ID UTENTE) 0E0000008F33A802;0B00000034D4D602;
(Permessi) 255;0;

l'utente 1 puo entrare in tutte le porte l'utente2 in nessuna...

ora se l'utente ha il permesso di entrare nella porta il server invia true al client altrimenti ivia false. se il client riceve true attiva dei bottoni in un form e l'utente puo aprire la porta o visualizzarne lo stato...

se decide di aprire la porta cliccchera sul bottone apri e il server ricevera la stringa apri... qui sta il problema...come faccio a distinguere comando da codice?? per ora faccio una serie di if ma quando saranno 200 utenti e 200 comandi nn posso fare 200 if...
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:42   #6
Molz
Member
 
Iscritto dal: May 2003
Messaggi: 119
Se spedisci oltre alla stringa delle informazioni su cosa contiene la stringa (come diceva kingv) t dovrebbe andare bene, o no?

Altrimenti invece ke spadire stringhe puoi crearti un oggetto serializzato ke contenga nei vari campi tutte le informazioni ke vuoi e spedire qello con 1 writeObject
Molz è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:48   #7
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
il problema e che a me andrebbe bene qls soluzione ma con le mie conoscenze scarse di java ho difficolta ad implementarle capisci?? non capisco nulla del codice...
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:52   #8
monkey72
Senior Member
 
L'Avatar di monkey72
 
Iscritto dal: Dec 2001
Messaggi: 1385
Quote:
Originariamente inviato da anna182
il problema e che a me andrebbe bene qls soluzione ma con le mie conoscenze scarse di java ho difficolta ad implementarle capisci?? non capisco nulla del codice...
vabbè, oltre alle cose che già il client invia al server basta che invii anche il tipo di informazione che gli stai inviando codice o comando e implementi di conseguenza il comportamento del server, nel caso di codice controllo accessi per quell'utente, nel caso di comando la rispettiva implementazione...
sarebbero solo due altre info inviate al server, come ti hanno già suggerito...
__________________
lui è il mio amore: "tesò domani ti regalo un guinzaglio lungo 100 km"
monkey72 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:55   #9
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da anna182

se decide di aprire la porta cliccchera sul bottone apri e il server ricevera la stringa apri... qui sta il problema...come faccio a distinguere comando da codice?? per ora faccio una serie di if ma quando saranno 200 utenti e 200 comandi nn posso fare 200 if...

te l'ho scritto come fare, il client sa se sta mandando un codice o un comando giusto? allora faglielo scrivere a lui così il server non ha difficoltà a capirlo!

e' la soluzione piu' semplice.
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 09:56   #10
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
quindi se devo associare il comando ad una variabile ed il codice ad un altra variabile devo fare due funzioni sendToSocket?? visto che la mia ora prende come parametri una stringa (o codice o comando) e li invia al server....
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 10:05   #11
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
quindi se devo associare il comando ad una variabile ed il codice ad un altra variabile devo fare due funzioni sendToSocket?? visto che la mia ora prende come parametri una stringa (o codice o comando) e li invia al server....
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 10:21   #12
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da anna182
quindi se devo associare il comando ad una variabile ed il codice ad un altra variabile devo fare due funzioni sendToSocket?? visto che la mia ora prende come parametri una stringa (o codice o comando) e li invia al server....

vuol dire che chi chiama il metodo sendToSocket (funzione??? si chiamano metodi) lo fara' cosi' nel caso di un codice:

obj.sendToSocket("<codice>" + codice + "</codice>");

e cosi' nelk caso di un comando

obj.sendToSocket("<cmd>" + comando + "</cmd>");
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 10:30   #13
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
Quote:
Originariamente inviato da kingv
vuol dire che chi chiama il metodo sendToSocket (funzione??? si chiamano metodi) lo fara' cosi' nel caso di un codice:

obj.sendToSocket("<codice>" + codice + "</codice>");

e cosi' nelk caso di un comando

obj.sendToSocket("<cmd>" + comando + "</cmd>");
il mio prof le ha sempre chiamate funzioni...
NO COMMENT... cmq ok ok quindi dopo aver letto il codice metto
obj.sendToSocket("<codice>" + codice + "</codice>");
e altrimenti
obj.sendToSocket("<cmd>" + comando + "</cmd>");

dopo pero quando il server legge se io gli dico read from socket (codice) capisce??

piccolo problema pero il mio METODO sendToSocket e fatto cosi...

public void sendToSocket(Socket socket, String str)throws IOException{
System.out.println("Stringa inviata: " + str);
oStream = socket.getOutputStream();
for (i=0; i<str.length();i++){
oStream.write(str.charAt(i));
}
oStream.write('\n');
}
quindi non gli devo passare la stringa?? oppure ne faccio due uno per il codice e uno per il comando???
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 11:04   #14
cn73
Senior Member
 
L'Avatar di cn73
 
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
Non è sbagliato chiamare funzioni quei metodi che restituiscono qualcosa e procedure i metodi void...
cmq hai pvt.
cn73 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 11:05   #15
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da anna182
quindi non gli devo passare la stringa?? oppure ne faccio due uno per il codice e uno per il comando???

chiamalo una sola volta passando una stringa che comprende già sia il dato che il tipo di dato (codice o comando).

Per concatenare due stringhe puoi usare l'operatore "+" (guarda nell'esempio due post fa).
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 11:11   #16
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
Quote:
Originariamente inviato da kingv
chiamalo una sola volta passando una stringa che comprende già sia il dato che il tipo di dato (codice o comando).

Per concatenare due stringhe puoi usare l'operatore "+" (guarda nell'esempio due post fa).
quindi posso passare lo stesso str alla funzione o metodo o come si vuole chiamare e str la inizzializzo con str = comando + codice??
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 11:13   #17
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da anna182
quindi posso passare lo stesso str alla funzione o metodo o come si vuole chiamare e str la inizzializzo con str = comando + codice??
si
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 11:15   #18
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
Quote:
Originariamente inviato da kingv
si
vabbe scusa nn avevo capito....nn e colpa mia se ODIO queste cose e nn ci capisco na mazza...x voi sembra tutto facile per me no...
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 11:22   #19
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da anna182
vabbe scusa nn avevo capito....nn e colpa mia se ODIO queste cose e nn ci capisco na mazza...x voi sembra tutto facile per me no...


kingv è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2004, 14:12   #20
anna182
Member
 
Iscritto dal: May 2004
Messaggi: 60
per fortuna mi perdoni anche se nn ci capisco una mazza.... ora provo a mettere in pratica quello che mi hai detto ma nn so se riesco...ho un po di confusione....
__________________
anna182
vivi come se dovessi morire domani, pensa come se non dovessi morire mai!!!
anna182 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
È un portatile Dell e li vale tut...
Apple iPhone 17 Pro Max 256GB a 1.195€ (...
GPT-6 Astra è davvero AGI o non s...
LG OLED G6S 48'' a 845€ e G6 55'' a 1368...
Mantax Otax: il malware Android che crip...
Musk incassa un altro maxi contratto IA:...
Le vendite di EV sono esplose in tutto i...
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:17.


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