Bagaimana cara membuka file teks MacOs dengan benar di Win?

Bagaimana cara mengubah file teks Mac menjadi file teks Win dan sebaliknya?

sampai sekarang saya tidak tahu bahwa file teks MacOS dan Win berbeda. Saya tidak berbicara tentang karakter baris baru: CR untuk MacOS, LF untuk Unix, dan CR/LF untuk win.

Rupanya, ada lebih banyak perbedaan dalam hal karakter khusus, seperti Umlauts dll. Saya mendapatkan file teks yang dibuat di Mac, jika saya membukanya di Win dengan Notepad++, saya diberitahu Macintosh ANSI, namun,

ö menjadi š

ä menjadi Š

ü menjadi Ÿ ...

dengan Notepad++, saya mencoba semua jenis pengkodean, Windows 1252-1 atau ISO-8859, UTF-8, ... Seperti yang saya pelajari, sepertinya ada pengkodean MacOS Roman... yang tampaknya tidak dipahami oleh Notepad++. Ketika pada akhirnya saya mungkin berhasil membuka dan mengedit file teks Mac dengan benar, saya rasa akan lebih baik jika saya menyimpannya sebagai UTF-8 untuk pertukaran lebih lanjut antar sistem OS tanpa masalah.

Pertanyaan saya: bagaimana saya bisa membaca file teks Mac (yang disandikan) dengan benar di bawah Win?

(NB: mengirim file ke seseorang dengan Mac dan memintanya untuk menyimpannya sebagai UTF-8, saya tidak akan menganggapnya sebagai solusi praktis).


person theozh    schedule 03.02.2018    source sumber
comment
Bagaimana file-file ini dibuat? Berapa umur mereka? Mac OS Roman sudah ketinggalan zaman sejak pertengahan tahun 2000-an.   -  person    schedule 04.02.2018
comment
OS X/macOS sudah cukup lama tidak menggunakan CR, saya ingat sudah menggunakan LF selama lebih dari 10 tahun.   -  person user3439894    schedule 04.02.2018
comment
@duskwuff file-file ini dibuat oleh perangkat lunak transkripsi audio, yang (seperti yang Anda katakan) tidak mutakhir dalam hal pengkodean saat mengekspor ke teks. Seseorang dengan Mac menggunakan BBEdit untuk mendeteksi bahwa itu adalah MacOS yang dikodekan Romawi dan dapat menyimpannya sebagai UTF8. Namun, bagi saya, kemungkinan besar tidak ada perangkat lunak Windows yang akan mendeteksi pengkodean Mac yang lama dan usang, bukan?!   -  person theozh    schedule 04.02.2018
comment
MacOS Roman, menurut Wikipedia, adalah Halaman Kode 10000. Ini didukung pada kerangka .Net sebagai pengkodean teks macintosh, jadi sebaiknya menulis program C# atau VB untuk mengonversinya. Pertanyaan ini agak kurang memiliki sudut program yang diperlukan untuk StackOverflow.   -  person Nyerguds    schedule 06.02.2018
comment
Catatan, pengkodean teks tanpa persyaratan bitwise atau byte pengidentifikasi khusus tidak dapat dideteksi, kecuali secara heuristik. Jika dalam suatu pengkodean, nilai byte apa pun dari 0 hingga 255 dipetakan ke sebuah karakter (seperti halnya sebagian besar pengkodean 8-bit murni), tidak ada data yang salah untuk pengkodean tersebut, dari sudut pandang komputer. Dan saya tidak tahu setiap editor teks yang berisi kamus beberapa lusin bahasa hanya untuk mendeteksi kata valid apa yang mungkin ada di sana.   -  person Nyerguds    schedule 06.02.2018


Jawaban (1)


@Nyerguds, saya berharap ada kotak centang atau daftar kode sederhana di beberapa program. Namun sejauh ini saya tidak dapat menemukannya... Namun, sepertinya ada solusi terprogram...

# MacOSRoman2UTF8.py
import codecs, sys

# enter filename without .txt
fname = sys.argv[1]

with codecs.open(fname+'.txt', 'r', encoding='macroman') as file_in:
    file_content = file_in.read()

with codecs.open(fname+'_utf8.txt', 'w', encoding='utf-8') as file_out:
    file_out.write(file_content)
person theozh    schedule 07.02.2018