2009-08-21 3 views
1

파일에서 HBufC8 변수로 데이터를 읽은 다음 동일한 데이터 을 다른 파일에 쓰려고합니다. 다음은 내 테스트 코드입니다. 읽기의 내부 루프는 각 반복에서 5000 문자를 읽으려면 4 번 반복됩니다. 그러나 데이터를 다시 파일에 기록하려고 시도하면 "testfile.txt"파일이 비어 있습니다. 그것은 더 주위에 약간을 담당 할 것입니다하지만 도움이 언제나처럼 감사하겠습니다, 감사합니다) 심비안 주변에 놀 때 내가 한Symbian : 파일에 HBufC *를 쓰는 방법

 HBufC8* iFileBuffer = HBufC8::NewL(20000); 
    TPtr8 ptr(iFileBuffer->Des()); 

    fp.Seek(ESeekStart,pos); 

    Err = fp.Read(ptr); 

    while(!Err && ptr.Length()>0) 
    { 
     Err = fp.Read(ptr); 
     Printf(_L("Data read: %d \n\n"), ptr.Length());   
    } 

    fp.Create(iFileServer,_L("C:\\testfile.txt"), EFileWrite); 

    fp.Seek(ESeekEnd,pos);  

    fp.Write(*iFileBuffer); 
    fp.Close(); 

    delete(iFileBuffer); 

답변

-1

우선 정상적인 C IO를 자신의 미친 IO 클래스를 도랑 사용하는 것이 었습니다 : 만약 당신이 (아주 멀리하지 않을 수있는 다른 플랫폼을 위해 쓰기로 결정한 경우

예를 들어

,이,이 3 배 이상 휴대용 보너스로 심비안 memorybuffer

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

fp = fopen("c:\\data\\others\\pngfile.png","wb"); 
if(fp) 
{ 
     fwrite((char*)httpInputBufDesc->Ptr(), httpInputBufDesc->Length(), 1, fp); 
     fclose(fp); 
     fflush(fp); 
} 
else 
{ 
     LOG("Failed to write to disk\n"); 
} 

에서 PNG 파일을 기록 Sy 이후로 가져왔다. mbian은 점점 더 많은 개발자와 노키아의 도움을 잃어 가고있는 것처럼 보입니다.)

+0

STLPort도 Symbian에서 꽤 잘됩니다. –

1

20000 바이트의 입력 파일. 첫 번째 읽기는 전체 파일에서 읽은 것 같습니다. 이 경우 두 번째 읽기는 두 번째 파일에 쓰는 0 바이트를 반환합니다.

두 파일 모두에 대해 동일한 RFile 핸들을 사용하지 않을 수도 있습니다. Close 파일을 완료하는 것도 좋은 습관이지만, 파일 서버 세션을 닫을 때도 파일이 자동으로 닫힙니다.

+0

오 예, 그게 전부입니다. 위선적 인 말을 믿을 수가 없어! 당신의 도움에 많은 감사드립니다! –

관련 문제