'sceIoDread'에 해당되는 글 2건

  1. 2008.07.04 PSP 메모리 스틱의 FAT Access하여 파일명 얻어오기
  2. 2008.06.17 한글 파일 명에 대한 문제 1
PSP의 sceIoDread 함수의 버그? 로 인하여 다국어 문자셋을 얻어올 수 없는 문제때문에
FAT 에 직접 접근하여 한글 파일명을 얻어와야만 했다. 개발하면서 문자셋 때문에 꽤나 애 먹었었다.

FAT 관련 자료는 인터넷에 꽤나 많이 널려 있으니 각자 찾아보길 바란다.

*********************************************************************
대부분의 메모리스틱이 1G 이상이고 FAT32를 사용하고 있으므로 FAT32 만을
지원한다.  FAT12와 FAT16은 앞으로도 지원하지 않을 계획이다.
*********************************************************************


소스코드는 아래에 있으며 라이센스는 GPL을 따른다.


Posted by ryu2811
피곤하다~ 간단한거 같았는데 잘 안되네... 한글 파일이 단순히 출력의 문제라고 생각했었는데 그게 아니었다.

SceUID dirfd;
SceIoDirent entry;

    // open directory
    dirfd = sceIoDopen (dirinfo -> pathname);
    if (dirfd < 0)
    {
        pprintf ("sceIoOpen () failed. [%s]\n", dirinfo -> pathname);
        return (FAILURE);
    }

    // read file entry
    memset (&entry, 0x00, sizeof (entry));
    ret = sceIoDread (dirfd, &entry);
    // no more file exist
    if (ret == 0)
    {
        break;
    }
    // error occur
    if (ret < 0)
    {
        pprintf ("sceIoDread () failed. [%s]\n", dirinfo -> pathname);
        return (FAILURE);
    }

로 이루어진 콤보가 ㅋㅋ 오동작? 을 한다는 것이다. 왜 그런지 모르겠다.

sceIoDread 한 후 entry 에서 파일 이름 부분인 d_name 을 보면 한글 부분은 모두 0x81A1이 들어간다는 것이다. 디렉토리내의 엔트리를 잘못 얻어온다는 얘기인데...
Posted by ryu2811
이전버튼 1 이전버튼