[问题] win/linux下的ASCII转换hex的问题

楼主: mattheww (阿政)   2015-05-20 01:25:40
大家好,小弟现在有一个在windows下接收data所得到的ascii code file,
想将此file在linux系统下转成十六进制,
但发现原本应该是十六进制"0A"的ascii符号一直没办法被判读到,
(PS.其他ascii字符目前没发现问题)
想请问板上高手们是否有相关经验呢?
以下是小弟的简单程式码:
open(PM, "./parser.log")
binmode PM;
foreach(<PM>)
{
chomp($_);
$line = $_;
my $out = unpack('H*', $_);
print "$out"
}
真的麻烦板上高手了,谢谢阿!!!
作者: CindyLinz (Cindy Wang)   2015-05-20 01:38:00
chomp 把 "\n" 字符 (就是 0A) 删掉了呀~
楼主: mattheww (阿政)   2015-05-20 02:14:00
感谢C大!原来是我一直弄错方向一直以为是不同系统的问题,谢谢你!!
作者: flu (Crazy Rhythm)   2015-05-20 02:22:00
有用binmode, line input mode,只chomp掉\x0a, 档案是windows那输出后不就一堆 \x0d 遗留下来了??更正:档案来源是windows
楼主: mattheww (阿政)   2015-05-20 13:04:00
试了一下,好像不论有没有加binmode,"0d"都会留下来

Links booklink

Contact Us: admin [ a t ] ucptt.com