ปรากฏการณ์นี้ทำให้ฉันต้องถามคำถาม
นี่คือการทดลองโดยละเอียดระบบปฏิบัติการของฉันคือ Windows 7 x64 SP1:
- ฉันเปลี่ยนไฟล์รูปภาพ (JPG) เป็น TXT โดยเพียงแค่เปลี่ยนนามสกุล (หรือเพียงแค่เลือกเปิด JPG ด้วย notepad ก็ได้)
มันควรมีหน้าตาแบบนี้แปลก ๆ ที่เรียงลำดับข้อความและบางส่วน (หายากมาก) มีความหมายเช่นในภาพด้านล่าง "creator: dg-jpeg v1.0 ... "
- ฉันปิดการตัดคำและเลือกข้อความทั้งหมดโดยใช้ Ctrl + A (เพื่อให้แน่ใจว่าไม่มีอะไรพลาด)
- ฉันวางข้อความที่คัดลอกไปยังไฟล์ TXT ว่างเปล่าอีกไฟล์และบันทึกเป็น JPG ฉันเปรียบเทียบขนาดไฟล์ใหม่กับ JPG ดั้งเดิม ทั้งหมดของพวกเขา (คนเดิม JPG ไฟล์ TXT แปลงและไฟล์ TXT ที่สร้างขึ้นใหม่) เป็นของที่แน่นอนขนาดเดียวกันเพื่อไบต์
เมื่อฉันพยายามที่จะเปิด, Windows จะบอกว่า"Windows Photo Viewer ไม่สามารถเปิดภาพนี้เพราะไฟล์ที่ดูเหมือนจะได้รับความเสียหายเสียหายหรือมีขนาดใหญ่เกินไป"
ฉันพยายามทดสอบด้วยวิธีอื่น: เปิด JPG ด้วย notepad ฉันตัดหนึ่งอักขระที่รู้จักจากตำแหน่งที่จดจำได้ง่าย (เช่นตัวอักษรตัวแรกของบรรทัดที่ 2) จากนั้นบันทึกไฟล์ แน่นอนว่าผู้ดูจะแสดงข้อความเดียวกัน จากนั้นฉันก็เปิดมันอีกครั้งและวางตัวอักษรไปยังตำแหน่งที่แน่นอน (Notepad จะจดจำสถานะทางออกของมันเช่นตำแหน่งของหน้าต่างการห่อขนาดตัวอักษร ... ดังนั้นฉันจึงไม่มีปัญหาในการทำให้ถูกต้อง)
และยังคงมีข้อผิดพลาดเดียวกัน คุณสามารถลองสิ่งนี้เพื่อให้ได้ความคิดอย่าลืมเลือกรูปภาพขนาดเล็กมิฉะนั้น Notepad จะทำตัวเหมือนชายชราสนิม
อะไรเป็นสาเหตุของปรากฏการณ์นี้
C:\blah>fc file1 file2
เป็นไปได้ที่ไฟล์จะมีขนาดเท่ากัน แต่ต่างกัน (แม้ว่าโดยทั่วไปแล้วการเปลี่ยนแปลงแบบสุ่มจะไม่ทำให้ไฟล์มีขนาดเท่ากัน แต่ทำได้อย่างง่ายดาย) คำสั่ง fc จะมีประโยชน์มากสำหรับคุณในการตรวจสอบสิ่งที่เกิดขึ้น คุณยังสามารถใช้คำสั่ง xxd นี่คือใน cygwin และยังมาพร้อมกับ vim7 xxd -p file1 ที่จะถ่ายโอนฐานสิบหกของไฟล์ คุณสามารถเปรียบเทียบ hex ของไฟล์ทั้งสองกับมันและ fc หรือแม้กระทั่งเปิด hex ในแผ่นจดบันทึกแล้วสะบัดระหว่างหน้าต่างแผ่นจดบันทึกทั้งสองด้วย alt-tab