การเปลี่ยน ANSI เริ่มต้นเป็น UTF-8 ใน Notepad


21

ฉันได้รับเครื่องอ่าน e-book เมื่อไม่กี่เดือนที่ผ่านมาและในที่สุดฉันก็พบว่าทำไมมันไม่แสดงไฟล์. txt อย่างถูกต้อง ไม่ชอบ ANSI มันไม่มีปัญหากับการเขียนโน้ตอีก 3 ประเภท

ด้วยเหตุผลที่ฉันเลือก UTF-8 และถอดรหัสไฟล์. txt ทั้งหมดที่มีอยู่ (เรากำลังพูดถึงเอกสารขนาดเล็ก แต่สำคัญหลายพันข้อ) พวกเขาทำงานอย่างถูกต้องและตอนนี้ฉันใส่ใจที่จะบันทึกใน UTF-8 แต่ฉันรู้ว่าตัวเองฉันรู้ว่าในบางจุดฉันจะลืมมันและบันทึกใน ANSI เริ่มต้น

ดังนั้นคำถามหลังนวนิยายเล่มเล็ก: มีวิธีใดในการเปลี่ยนการเข้ารหัสเริ่มต้นเมื่อบันทึกแผ่นจดบันทึกที่เพิ่งเปิดใหม่ (Win 7)

ฉันรู้เกี่ยวกับวิธีการเปลี่ยนค่าเริ่มต้นเมื่อเปิดไฟล์. txt ที่สร้างไว้ก่อนหน้านี้ แต่มันเจ็บปวดที่ต้องสร้างเอกสารใหม่ก่อนเสมอ


คำตอบ:


15

พยายามเสนอคำตอบที่ชัดเจนในสถานที่:

  1. คลิกขวาที่เดสก์ท็อปแล้วเลือกใหม่> เอกสารข้อความ
  2. ไฟล์ข้อความNew Text Document.txtถูกสร้างขึ้น อย่าพิมพ์อะไรและเปิดมัน
  3. ไปที่ไฟล์> บันทึกเป็น ... และเลือก UTF-8 ภายใต้Encoding:กดSaveและเขียนทับไฟล์ที่มีอยู่ ปิดไฟล์
  4. เปลี่ยนชื่อNew Text Document.txtเป็นTXTUTF-8.txt
  5. คัดลอก"TXTUTF-8.txt"ไปยังC:\WINDOWS\SHELLNEW
  6. ไปที่Start > Run...และพิมพ์regeditแล้วกดตกลง
  7. นำทางไปยัง HKEY_CLASSES_ROOT\.txt\ShellNew
  8. คลิกขวาในหน้าต่างด้านขวา> ใหม่> String Valueและเปลี่ยนเป็นFileName
  9. ดับเบิลคลิกที่FileNameและใส่TXTUTF-8.txtลงในValue data:ฟิลด์และกดตกลง

ข้อบกพร่องของการแก้ปัญหานี้คือเมื่อใดก็ตามที่คุณต้องการเปิดเอกสาร utf-8 txt ที่ว่างเปล่าคุณจะต้องคลิกขวา> ใหม่> เอกสารข้อความและทำงานจากที่นั่น

ข้อควรจำ: การแก้ไขรีจิสตรีนั้นอันตราย! ใช้ความเสี่ยงของคุณเอง

แหล่ง


2
อย่าทำอย่างนั้น - คุณจะช่วยรักษาอาการปวดหัวลงที่ถนน Notepad ในทางเทคนิคบันทึกไฟล์โดยใช้การเข้ารหัสลายเซ็น UTF-8 ไม่ใช่ UTF-8 ธรรมดาซึ่งเพิ่มเครื่องหมายพิเศษให้กับไฟล์ที่แสดงเป็นสัญลักษณ์แปลก ๆ ในบางโปรแกรมเช่น ExamDiff และอาจนำไปสู่ผลลัพธ์ที่ไม่คาดคิดในผู้นำเข้า CSV ฯลฯ
thdoan

1
คุณช่วยฉันจากปัญหาใหญ่ที่ทำร้ายฉันมานานหลายปี ฉันรู้สึกอยากสร้างไฟล์ทุกวัน !!! :-D
Nabi KAZ

1
@thdoan ฉันเชื่อว่ามีอาการปวดหัวเกิดขึ้นเนื่องจากโปรแกรมเมอร์ของ Notepad ไม่สามารถรับรู้ได้ว่า utf8 นั้นมีประโยชน์มากกว่า ANSI เริ่มต้นสำหรับผู้ใช้ส่วนใหญ่ หากคุณเป็นโปรแกรมเมอร์และต้องการผู้นำเข้า CVS คุณรู้ว่าต้องทำอะไรล่วงหน้า อย่าลืมค่าเริ่มต้น ANSI ไม่รองรับภาษาอื่นที่ดียกเว้นละติน
Yannis Dran

จริงๆแล้ว @thdoan, UTF-8 ที่มี (ไม่ใช่อันที่จริง) "BOM" นั้นใช้ได้ตราบใดที่คุณใช้โปรแกรมที่ทันสมัยมันแค่แบ่งกับโปรแกรมรุ่นเก่าที่ไม่รู้จักลายเซ็น UTF-8 และคิดว่าเป็นส่วนหนึ่งของมัน ของข้อมูล (หรือในกรณีที่หายากมากโดยที่ลายเซ็นนั้นจริงๆแล้วคือสามไบต์แรกของไฟล์ที่ควรจะเป็น ANSI) ... มันเสีย 3 ไบต์ระหว่างการส่งผ่านเครือข่าย แต่ส่วนใหญ่เป็นเพราะผู้ส่งสามารถระบุการเข้ารหัสโดยไม่ต้องมีลายเซ็นในไฟล์
Justin Time - Reinstate Monica

@ MehdiDehghani อาจเป็นเพราะคุณทำอะไรผิด โปรดอ่านอีกครั้งนำไปใช้กับความรู้ใหม่ที่คุณได้รับและกลับมาพร้อมกับความคิดเห็นที่เป็นประโยชน์เพื่อให้เราสามารถช่วยคุณสร้างความสับสน นอกจากนี้ OP ยังไม่เคยเห็นมาตั้งแต่ 27 มี.ค. 56 เวลา 0:25 คำตอบของฉันคือ 2 ปีต่อมา นั่นคือเหตุผลที่ไม่ได้ทำเครื่องหมายเป็นวิธีแก้ปัญหา เครดิตเป็นของ Mariyan ซึ่งลิงก์ในคำตอบของเขาไม่ทำงานอีกต่อไป
Yannis Dran

6

นี้นี่เป็นคำอธิบายที่ดีงามสำหรับวิธีการที่จะเปลี่ยนการเข้ารหัสเริ่มต้นของคุณให้เป็น UTF-8 คุณจะต้องแตะไฟล์รีจิสตรี

ส่วนตัวฉันจะไม่รำคาญกับมัน เพียงดาวน์โหลดNotepad ++ ได้ฟรีดีเลิศและเป็นค่าเริ่มต้นสำหรับ UTF-8


1
Notepad2หรือNotepad2-modมีน้ำหนักเบากว่า พวกเขาทั้งหมดสนับสนุนการตั้งค่าการเข้ารหัสชุดอักขระเริ่มต้นและแม้กระทั่งรองรับไฟล์ ASCII แบบเปิด 7 บิตในโหมด UTF-8
LiuYan 刘研

ใช่นี่เป็นไฟล์ที่ใช้ได้เมื่อฉันสร้างไฟล์. txt ไว้ก่อนหน้านี้ ฉันรู้จัก Notepad ++ แต่ฉันชอบความเรียบง่ายของ Notepad ขั้นพื้นฐานมันไม่ได้ใช้ความทรงจำอะไรมากมายและสำหรับสิ่งที่ฉันต้องการมันก็ใช้ได้ดี ยกเว้นสิ่งนี้ ...
เอ็มม่า

2
ในกรณีนี้เพียงทำตามคำแนะนำและคุณก็พร้อมที่จะไป Notepad ++ ไม่ได้อยู่ที่ทรัพยากรหนัก มันตรงกันข้ามกัน
Mariyan

น่าเสียดายที่ลิงค์ Microsoft ไม่ทำงานอีกต่อไป ฉันสงสัยว่าsuperuser.com/a/872848/74576มีข้อมูลเดียวกัน
Ryan

@ ไรอันฉันรู้ว่ามันมาช้า แต่ในกรณีที่ใครก็ตามที่หาข้อมูลที่ลิงค์นี้มีสามารถดูคำตอบของฉันแทน
Yannis Dran
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.