Konwertuj ansi do ascii

Konwertuj ANSI na ASCII

Konwertuj tekst z kodowej strony Windows do ścisłego ASCII, sprawdzając utratę znaków i zgodność.

Twórz pliki ASCII online

Nie potrafimy jeszcze odczytać plików ANSI, więc tej konwersji nie oferujemy. Jeśli możesz wyeksportować swoją pracę do jednego z tych formatów, zrobimy z niego ASCII:

Jak konwertować ansi do ascii

Starsza drukarka, terminal, urządzenie embedded lub program importujący może akceptować wyłącznie 7-bitowy ASCII, podczas gdy tekst źródłowy został zapisany z użyciem strony kodowej Windows. Konwersja sprawia, że plik staje się czytelny dla tego urządzenia docelowego, ale znaki spoza ASCII mogą zostać transliterowane lub zastąpione.

Co oznacza ANSI

ANSI to zwykle nieprecyzyjna nazwa kodowania znaków Windows, a nie pojedynczy format pliku. Typowe strony kodowe to Windows-1252 dla tekstu zachodnioeuropejskiego, Windows-1251 dla cyrylicy oraz Windows-1250 dla tekstu środkowoeuropejskiego. Starsze edytory Windows, narzędzia DOS, systemy księgowe i programy eksportujące często tworzą pliki opisywane jako ANSI.

Dokładnego kodowania źródłowego nie można wiarygodnie określić wyłącznie na podstawie nazwy pliku lub bajtów. Ustal stronę kodową na podstawie programu, który utworzył plik, jego dokumentacji albo języka i znaków występujących w treści. „ANSI” może również oznaczać sekwencje escape terminala używane do wyświetlania kolorowego lub pozycjonowanego tekstu; zmiana kodowania znaków nie usuwa ani nie interpretuje tych sekwencji.

Co zapewnia ASCII

ASCII definiuje 128 wartości, w tym litery alfabetu łacińskiego, cyfry dziesiętne, znaki interpunkcyjne, białe znaki i znaki sterujące. Ścisły plik ASCII zawiera wyłącznie bajty od 0x00 do 0x7F, zwykle bez znacznika kolejności bajtów. Umożliwia to obsługę starszego sprzętu, narzędzi wiersza poleceń, systemów importu danych i urządzeń odrzucających bajty powyżej 127.

ASCII nie może reprezentować liter diakrytycznych, typograficznych cudzysłowów, pauz, większości alfabetów innych niż łaciński, emoji ani innych znaków Unicode. Konwersja musi więc dokonać transliteracji znaku, na przykład é do e, albo go zastąpić, zwykle znakiem ?. Wynik może utracić informacje i nie można go wiarygodnie odtworzyć. ASCII nie musi być mniejszy od oryginalnego pliku ze strony kodowej: w obu przypadkach często używany jest jeden bajt na znak.

Konwersja za pomocą iconv

  1. Ustal rzeczywistą stronę kodową źródła. Używaj CP1252 tylko wtedy, gdy plik faktycznie ma kodowanie Windows-1252; nie traktuj każdego pliku oznaczonego jako ANSI jako CP1252.
  2. W systemie macOS lub Linux uruchom:
    iconv -f CP1252 -t ASCII//TRANSLIT input.txt -o output.txt
  3. Otwórz output.txt w edytorze obsługującym analizę bajtów i wyszukaj znaki zapytania lub brakujące znaki. Sprawdź zakończenia wierszy, jeśli system odbierający wymaga CRLF lub LF.

Zastąp CP1252 właściwą nazwą źródła, na przykład CP1251. //TRANSLIT informuje zainstalowaną implementację iconv, aby spróbowała przybliżyć nieobsługiwane znaki; wyniki różnią się w zależności od platformy. Bez transliteracji użyj -t ASCII; nieobsługiwane znaki zazwyczaj powodują błąd zamiast utworzenia prawidłowego, kompletnego wyniku. Zachowaj oryginalny plik do czasu zweryfikowania wyniku.

Konwersja za pomocą oprogramowania desktopowego

Edytory takie jak EmEditor, UltraEdit i BBEdit mogą otworzyć plik z użyciem określonej strony kodowej Windows i zapisać go jako US-ASCII lub ASCII. Otwórz plik przez File → Open, wybierz znane kodowanie źródłowe, a następnie użyj File → Save As i wybierz jawnie kodowanie ASCII. Wybranie opcji „ANSI” podczas eksportu nie wystarcza: zazwyczaj zapisuje ona aktywną stronę kodową Windows i może zachować bajty powyżej 127.

Notepad++ może sprawdzić plik lub otworzyć go ponownie z wybranym kodowaniem, ale jego polecenie Encoding → Convert to ANSI oznacza aktywną stronę kodową Windows, a nie ścisły ASCII. Użyj jawnej opcji ASCII, jeśli zainstalowana wersja ją udostępnia, albo użyj Notepad++ do poprawienia interpretacji źródła, a następnie przeprowadź konwersję za pomocą iconv lub innego edytora, który jawnie obsługuje US-ASCII.

Użycie konwertera online

W przypadku małego, niepoufnego pliku tekstowego renomowany konwerter kodowania znaków działający w przeglądarce, taki jak Browserling’s text encoding converter, może przeprowadzić konwersję z wybranej strony kodowej Windows do ASCII. Wybierz rzeczywistą stronę kodową źródła, jako miejsce docelowe wybierz ASCII lub US-ASCII, przeprowadź konwersję i pobierz wynik.

Nie przesyłaj haseł, danych osobowych, zastrzeżonego kodu ani dokumentacji podlegającej regulacjom. Lokalny konwerter pozwala uniknąć przesyłania pliku oraz zapewnia lepszą kontrolę nad błędami i przechowywanymi kopiami.

Sprawdzanie zgodności i utraty danych

Odczytanie pliku z użyciem niewłaściwego kodowania źródłowego uszkadza znaki jeszcze przed rozpoczęciem konwersji do ASCII. Windows-1252 i ISO-8859-1 są podobne, ale nie identyczne: bajty używane dla typograficznych cudzysłowów, symbolu euro i innych znaków Windows mogą zostać błędnie odczytane, gdy plik zostanie potraktowany jako ISO-8859-1.

Sprawdź każdy znak spoza ASCII w źródle, zwłaszcza nazwy, adresy, miary, cudzysłowy i symbole walut. Upewnij się, że wynik nie zawiera bajtów powyżej 0x7F; w systemach uniksopodobnych polecenie LC_ALL=C grep -n '[^ -~]' output.txt może pomóc znaleźć bajty spoza ASCII, choć oznaczy również tabulatory i inne znaki sterujące. Sprawdź, czy system docelowy wymaga określonego zakończenia wiersza oraz czy odrzuca sekwencje escape terminala ANSI.

Jeśli system odbierający akceptuje UTF-8, użyj UTF-8 zamiast ASCII. UTF-8 zachowuje oryginalne znaki i jest szeroko obsługiwany, natomiast ścisła konwersja do ASCII jest właściwa tylko wtedy, gdy system docelowy wymaga danych 7-bitowych.

Dodatkowe formaty dla konwersji pliku
ansi

Konwersja odwrotna

Konwersja do .ascii
z innych formatów

Udostępnij w mediach społecznościowych: