Mam wymaganie, gdy klient dostarczy plik w kodowaniu ANSI, ale mój system może tylko z powodzeniem odczytać plik w standardzie UNICODE. Jak więc rozwiązać ten problem? Wiem, kiedy zapisuję plik jako kodowany w standardzie UNICODE, a plik jest pobierany. Trudno jest dostosować klienta do naszej prośby. Więc czy mogę mieć jakiś program wsadowy dla tego folderu, aby przekonwertować ten plik na UNICODE, a następnie odebrać?Jak przekonwertować plik * .txt na Unicode
Odpowiedz
recode może wykonać zadanie.
iconv
może to zrobić:
Usage: iconv [OPTION...] [FILE...]
Convert encoding of given files from one encoding to another.
Input/Output format specification:
-f, --from-code=NAME encoding of original text
-t, --to-code=NAME encoding for output
Information:
-l, --list list all known coded character sets
Output control:
-c omit invalid characters from output
-o, --output=FILE output file
-s, --silent suppress warnings
--verbose print progress information
-?, --help Give this help list
--usage Give a short usage message
-V, --version Print program version
Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
Można również łatwo konwertować kodowania w Pythonie:
inf = open("infile.txt")
data = inf.read().decode("latin1")
inf.close()
outf = open("outfile.txt", "w")
outf.write(data.encode("utf-8"))
outf.close()
Oto rozwiązanie PowerShell
$lines = gc "pathToFile"
$lines | out-file -enconding Unicode
Ani ANSI ani Unicode są kodowania. Będziesz musiał znać stronę kodową ANSI pliku wejściowego i enco Unicode ding (UTF8 lub UTF16 - LE lub BE) przed użyciem jednego z sugerowanych narzędzi (takich jak iconv)
Żałuję, że nie mogłem tego zrobić więcej. W przypadku większości użytkowników systemu Windows "Unicode" oznacza UTF32. Większość języków zachodnioeuropejskich używa strony kodowej Latin1, więc większość ludzi zakłada kodowanie "ANSI" (ponownie, winię MS za użycie słów w ich opcjach "Zapisz jako"). –
Możemy dodać, że patrząc na Panel Sterowania-> Ustawienia regionalne-> Opcje zaawansowane pokaże, które strony kodowe ANSI są instalowane i używane. –
W systemach Windows "Unicode" zwykle oznacza UTF-16. –
Przeszedłem przez niektóre narzędzia wspomniane powyżej, wiele z nich wymaga linii poleceń.
Znalazłem o wiele łatwiejszy sposób konwertowania plików w systemie Windows.
Instalacja Notepad2 (http://www.flos-freeware.ch/). Jest otwarty i bezpłatny.
Otwórz plik ma kodowanie ANSI
kliknij dwukrotnie "ANSI" słowo na dole,
wybrać nowe kodowanie takie jak "utf8"
zapisać plik.
To tylko kilka kliknięć, aby wykonać pracę.
Co więcej, można raz przeglądać zawartość, aby dokonać podwójnego sprawdzenia.
Notepad2 ma wiele zalet w stosunku do Notatnika. Kod podświetleniu Undo/Redo itp
: D
Nie widzę, jak zmiana kodowania za pomocą interfejsu GUI Notepad2 jest łatwiejsza niż użycie wiersza poleceń, szczególnie w przypadku wielu plików? – ehambright
GUI jest bezużyteczne: X Polecenie wymaga zależności ... notepad ++ to po prostu kliknij, kliknij, kliknij ... – CodeFarmer
Ruby oneliner, FWIW:
ruby -e 'STDOUT.write STDIN.read.force_encoding(Encoding::WINDOWS_1252).encode!(Encoding::UTF_8)' <infile.csv> outfile.csv
Jeśli plik wejściowy jest straszne może trzeba taktykę STDIN.binmode; STDOUT.binmode;
na przedniej części skryptu Ruby.
- 1. Jak przekonwertować ciąg znaków na znak Unicode?
- 2. Jak przekonwertować znak na pełną nazwę Unicode?
- 3. Zapisz plik txt Ograniczony plik txt z C# .net
- 4. Jak przekonwertować plik PDF na plik tekstowy w iTextSharp
- 5. Jak przekonwertować kod Unicode na ciąg znaków na poziomie Python?
- 6. Jak dodać plik txt do projektu Android?
- 7. C++ Jak wydrukować plik .txt dosłownie?
- 8. Jak przekonwertować znak Unicode 00B0 (znak stopnia)?
- 9. Jak przekonwertować aplikację konsoli na plik .dll?
- 10. Jak przekonwertować plik XSD na C# Class
- 11. Jak przekonwertować plik System.IO.Stream na obraz?
- 12. Jak przekonwertować CMake na istniejący plik Makefile?
- 13. Jak przekonwertować plik MultipartFile na strumień bajtowy
- 14. Jak przekonwertować plik "System.Windows.Media.Imaging.BitmapImage" na "System.Drawing.Image"?
- 15. Jak przekonwertować plik CGImage na CMSampleBufferRef?
- 16. Jak przekonwertować plik kształtu oceanu na topojson
- 17. Jak przekonwertować plik .cs na cmdlet PowerShell?
- 18. Jak przekonwertować plik HTML na słowo?
- 19. Jak przekonwertować plik PDF na obraz?
- 20. jak mogę przekonwertować ciąg znaków Unicode na ASCII w java
- 21. Jak przekonwertować ciąg znaków UTF-8 na kod Unicode?
- 22. Jak przekonwertować tekst na mowę (plik mp3) w pythonie?
- 23. Jak przekonwertować plik PIL `Image` na plik Django` File`?
- 24. Jak przekonwertować plik BibTex na plik XML Word 2010?
- 25. Sprawdzanie, czy plik (txt) zawiera ciąg/zmienną
- 26. Przeczytaj plik .txt w katalogu dokumentów
- 27. Pisz plik PHP od wejścia do txt
- 28. . Plik txt do tablic przy użyciu Java
- 29. Jak przekonwertować plik package.json na install.rdf na dodatek Firefox?
- 30. odczytać plik txt za pośrednictwem klienta javascript
Kiedy mówisz "Unicode", masz na myśli UTF8, UTF16, UTF32 lub jakąś inną reprezentację? Jak rozpoznać kod źródłowy, gdy nie jest to kod Unicode? Na której platformie jesteś? –
Większość ludzi myśli UTF-32 = Unicode. Obwiniam stwardnienie rozsiane i ich "Zapisz jako" opcje dla tego pomysłu, który jest tak powszechny wśród mas. Smutno, gdy zobaczysz programistę (który powinien wiedzieć lepiej), który go udostępnia. –
MS używa głównie UCS-2, a nie UTF-32. – flodin