webmaster1989
25.10.2010, 14:22:17
Witam.Chcę odczytać plik ANSI,zmienić jego zawartość dopisując do każdej lini <br> i zapisać jako utf-8.Jak to zrobić? jakiś przykład?
wookieb
25.10.2010, 14:26:16
webmaster1989
25.10.2010, 14:59:55
ALE PROSZĘ A MALUTKI PRZYKŁAD.PONIEWAŻ PRÓBOWAŁEM TEGO I NIC.MALUTKI PRZYKŁAD KTÓRY OBRAZUJE ODCZYTANIE PLIKU ANSI,DODANIE DO KOŃCA LINI <BR> I ZAPISANIE JAKO PLIK UTF.Z GÓRY DZIĘKI
Próbowałem wpisać $string=iconv('UTF-8', 'ANSI', $string); ale pokazuje mi się komunikat:
Wrong charset, conversion from `UTF-8' to `ANSI' is not allowed
d3ut3r
25.10.2010, 15:08:00
ANSI z tego co mi wiadomo nie jest standardem kodowania, to jest organizacja. Może chodzi Ci o ASCII ? jeżeli tak to iconv powinno mieć odwrotnie argumenty czyli najpierw z jakiego kodowania konwertujesz a później na jakie.
CuteOne
25.10.2010, 15:09:35
$str = iconv("UTF-8","ISO-8859-2",$text); //- z utf na anscii
$str = iconv("ISO-8859-2","UTF-8",$text); // odwrotność
webmaster1989
25.10.2010, 15:13:15
sprawdze.Ponieważ ja mam plik zapisany w notatniku.I gdy zapisuje jako .pokazują mi się kodowania UTF-8, i jest także ANSI .
Tomplus
25.10.2010, 15:20:52
ANSI to standard kodowania zgodny z ISO-8859 więc nie można zapisać
$string=iconv('UTF-8', 'ANSI', $string);
bo ANSI to nie typ kodowania, tylko standard, więc wystarczy wpisać zamiast ANSI -> ISO-8859-2 i powinno być ok.
webmaster1989
25.10.2010, 15:23:45
$string=iconv("UTF-8","ISO-8859-2", $string);
nie działa mi :-( Ukazuje się błąd:
Detected an illegal character in input string (wykryto niedozwolony znak w ciągu)
Poprostu mam dla przykładu plik php który odczytuje zwykły plik ,napisany w notatniu ,zapisany jako UTF-8.
<?php
$danez= Array();
$i=0;
$file ="samplet.txt";
$size = filesize($file);
$fp = fopen($file, "r");
$string=fread($fp,$size);
$string=iconv("UTF-8","ISO-8859-2", $string);
echo $string;
?>
I chce go skonwertować na ANSI.POnieważ gdy mam zapisany jako UTF-8 .PLIK PHP ODCZYTUJE MI TAKIE WARTOŚCI:
EF BB BF ..plus tekst napisany.a ANSI odczytuje mi odrazu ciag znaków.
te 3 hexy mi są nie potrzebne(może wiecie po co są te 3 hexy?).I chce je zlikwidować bez użycia strreplace .
MAM ZAPISANY TEKST W NOTATNIKU W UTF-8 I GDY CHCE GO PRZEROBIĆ NA TE "ISO-8859-2".WYWALA MI BŁĄD.
DLACZEGO? CZY NOTATNIK JEST DO KITU
Tomplus
25.10.2010, 15:40:14
Nie dziwię się, jak chcesz skonwertować zupelnie co innego.
użyj $string = file_get_contents($file);
i dopiero taki sklonwertowany do ISO tekst zapisz do pliku.
webmaster1989
25.10.2010, 15:44:58
użyłem $string=iconv('UTF-8','ISO-8859-2//IGNORE', $string); i działa:-)
Ale nadal chce wiedzieć problem.Ponieważ użyłem :
file_get_contents i lipa
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.