» »

C -> parsing

C -> parsing

dëych ::

Npr. da je vrednost spremenljivke, ki jo dobim iz tcp headerja takšna:

MAIL FROM:<mail@server.com> SIZE=4478 

X#  X#  [&ugrave;(%C  §~^@2&iquest;_ €[§}âE'&
Ntilde;ú&AElig;&óúkF &otilde;×p j&yuml;&ordm; X#  [&ugrave;(%C  §~^@2&iquest;_ €
}âE'&Ntilde;ú&AElig;&óúkF &otilde;×p j&yuml;&ordm; X#  
[&ugrave;(%C  §~^@2&iquest;_ €[§}âE'&Ntilde;ú&AElig;
&óúkF &otilde;×p j&yuml;&ordm; 


A je možno kako v Cju to razbiti in ven potegniti samo prvi del:
"MAIL FROM: <mail@server.com> SIZE=4478"
Probal sem z nekimi funkcijami, ki parsajo sm tisto, kar hočeš in stvar deluje, če je vrednost te spremenljivke v eni vrstici, ko pa stvar zakompliciras, pa odpove.
  • spremenil: dëych ()

napsy ::

Prebereš do prvega newline?
"If you die, you die. But when you live you live. There is no time to waste."

SasoS ::

išči prvi = v stringu, nato preberi še toliko charov kolikor je številk, potem daš \0 :)

napsy ::

a ni lažje napisat

line = fgets(data, 128, fajl);
"If you die, you die. But when you live you live. There is no time to waste."

dëych ::

Sem zadevo rešil potem, da sem kar pustil v HEX obliki podatke in jih importiram v SQL. Sicer ni najboljs resitev, za testirat pa bo OK. In potem z php+SQL queryi izpisem tisto kar rabim in pretvorim v ASCII.
Drugace pa to nekaj caram z raw socketi..
Thx!
LP


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Python - pomoč (strani: 1 2 3 )

Oddelek: Programiranje
10317176 (7924) black ice
»

Thunderbird noče pošiljati emailov(randomly)

Oddelek: Programska oprema
8933 (875) levaky
»

[C] struct in int[] (strani: 1 2 )

Oddelek: Programiranje
656821 (5894) MrBrdo
»

[SQL] Kazalci pri grupiranju

Oddelek: Programiranje
8766 (643) Tody
»

SPF zapis(pravilna konfiguracija)

Oddelek: Omrežja in internet
81695 (1633) Maximus

Več podobnih tem