![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 55 Pomógł: 0 Dołączył: 31.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Jak w temacie proszę o pomoc w napisaniu parsera plików csv. Wiem że php oferuje juz gotowe rozwiązanie w postaci fgetcsv, natomiast funkcja ta ma problem z obcymi znakami, np cyrylica, hebrajskie i chociazby polskie ogonki. wyciaganie poprzez fgetcsv danych z csvłki z wymienionymi wyzej znaczkami powoduje wykasowanie owych znaków, natomiast ten sam plik otwarty poprzez file juz wyswietla się ok. kodowanie pliku jak i skryptów utf-8 zacząłem pisać własny parser, ale napotkałem problem, jezeli w lini jest wiecej niż jeden string oddzielany jakimiś cudzysłowiami albo w stringu znajdują się zdefiniowane delimitery, oto przykłady problematycznych sctingów, może ktoś da radę pomoc, lub ma już gotowe rozwiązanie?
Nie wiem jak napisać odpowiedniego regespa, żeby posortował mi wszystko tak jak powinien. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Jak ma problem, jak jakoś używam jej i bez problemu czytam dane w UTF-8?
-------------------- Specjalista ds. głupich i beznadziejnych, Zyx
Nowości wydawnicze: Open Power Collector 3.0.1.0 | Open Power Autoloader 3.0.3.0 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 55 Pomógł: 0 Dołączył: 31.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
No niestety ma problem, bo jakby go nie bylo to wciaz bym uzywal tej wbudowanej funkcji.
Niemniej jednak nie zbaczajac z toru, czy znalazłby sie ktos, kto ogarnałby temat z regexpem do csvałek? googluje juz jakis czas i nic znaleźć nie mogę... |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 279 Pomógł: 56 Dołączył: 3.06.2010 Skąd: Tarnowskie Góry Ostrzeżenie: (0%) ![]() ![]() |
Ja też nie miałem nigdy problemów z utf8. Wygląda na to że gdzieś masz błąd i przez to próbujesz wynaleźć koło na nowo.
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 55 Pomógł: 0 Dołączył: 31.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
ok to moze inaczej.
Mam csvlke wygenerowana pod windowsem wysylam formularzem na serwer postawiony na linuxie. Problem jest z kodowaniem niby oba pliki kodowane sa w utf-8, nawet dla pewnosci jeszcze raz go zapisuje w utf-8 (notepad++) niestety po wyslaniu i wywolaniu funkcji fgetcsv ogonki i non-latino sie kasuja. natomiast file() otwiera plik i prawidlowo wyswietla wszystkie znaki. jakas propozycja? |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 200 Pomógł: 8 Dołączył: 24.09.2003 Ostrzeżenie: (10%) ![]() ![]() |
Dołącze się do tematu ponieważ mam podobny problem z plikami csv w kodowaniu utf-8 i funkcją fgetcsv pobiera mi pola ale bez pierwszych znaków z ogonkami np zamiast "Černěves 50" mam "erněves 50".
Jeśli pierwsza litera jest zwykła tzn np C a nie Č to wszystko jest w porzadku. W tekscie później już też nie ma problemów, tylko pierwszy znak się wysypuje. -------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 07:43 |