看板 Perl 關於我們 聯絡資訊
先說結論就是有一個現象 Perl 在 windows 環境下 對於換行符號 也就是 "\n" 和 linux 環境中不同 同樣的 code print HANDLE "foo\n"; 可以發現 windows 中會寫入 0x0d0a 但是 linux 下ꔠ0x0a 後來想到可能是 windows 中自作聰明的文字模式 所以只先要下 binmode HANDLE; 就可以了 本來通常不會造成什麼影響啦 ... 只是正好最近寫了一個東西 就是利用 open 通過 STDIN 餵資料給 pnmtopng 來產生 png 圖檔 本來程式在 linux 中運作的好好的 但是換到 windows 下就爆炸了 ( ... 其實圖檔還變的很好笑 XD ) 後來發現是這裡多了一個 byte 造成的 所以如果有遇到這種一個 byte 都不能有差的情況下 使用 handle 的時候就要注意一下囉 ~ -- Welcome to my ... [ Blog in LiveSpace: http://reizarc.spaces.live.com/ ] [ Sketching album: http://vision.twbbs.org/gallery/crazier ] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.124.4.2
xam:其實這是基本的東西耶 12/18 00:32
clifflu:Perl 應該也可以用 binary mode 去開檔吧 ? ^^; 12/18 06:14