White scenery @showyou, hatena

If you have any comments, you may also send twitter @shsub or @showyou.

ファイル名の文字列

現在つかってるサーバに日本語のファイルを転送すると、文字が化ける。
そしてそのままUbuntuGnomeFTP機能でファイル転送を行うと、さらになんかおかしくなる。

わけわからんのでちょっと数値を見て解析してみる。

使用したのは「志方あきこ」の「RAKA」っていうアルバム。
ディレクトリ名は既に手元で修正している。

まず以下のプログラムで文字列を数値で表現してみる。

#include <stdio.h>
#include <string.h>

int main(char argc, char **argv)
{
    int i;
    if(argc==1) return -1;
    
    for(i=0;i<strlen(argv[1]);++i)
    {
    	printf("%x ",(unsigned char)argv[1][i]);
    }
    printf("\n");
    printf("%s\n",argv[1]);
}

yuki@yuki-desktop:~$ gcc filename.c
yuki@yuki-desktop:~$ ./a.out 志方あきこ\ -\ RAKA/*
e5 bf 97 e6 96 b9 e3 81 82 e3 81 8d e3 81 93 20 2d 20 52 41 4b 41 2f 30 31 20 91 e5 92 6e 82 cc 8c db 93 ae 2e 6d 70 33
志方あきこ - RAKA/01 ���n�̌ۓ�.mp3

次に
http://ja.wikipedia.org/wiki/UTF-8
http://www.psl.ne.jp/perl/pdojo00b.html
http://ja.wikipedia.org/wiki/EUC-JP
この辺でも参考にして一字ずつ解析していこうと思う。

もし全てUTF-8ならば、
00-7fがASCII
e0-efだとその後2バイトあわせて漢字
となるはず。