[求助]追寫數(shù)據(jù)亂碼

UINT8 i,s; PUINT8 name; PUINT8 buff; PUINT8 PathName;

unsigned char FDname[] = {"06-22"}; unsigned char Fname[] = {"T.TXT"}; unsigned char PutIn[]= {"testing of write the file"}; unsigned char nFname[] = {"/06-22/T.TXT"};

TRISBbits.TRISB0 = 1; /* INT設(shè)為輸入,監(jiān)控U盤連接 */

TRISEbits.TRISE0 = 0; TRISEbits.TRISE1 = 0; TRISEbits.TRISE2 = 0; TRISAbits.TRISA0 = 0;

s = mInitCH376Host(); /* 初始化CH376 */ mStopIfError(s);

DelayUS(1); s = CKECK_connect(); /* 檢查連接 */ mStopIfError(s);

DelayUS(1); s = CH376DiskMount(); /* U盤初始化 */ mStopIfError(s);

name = &FDname[0]; s = CH376DirCreate( name ); mStopIfError(s);

name = &Fname[0]; s = CH376FileCreate( name ); mStopIfError(s);

buff = &PutIn[0]; s = CH376ByteWrite( buff, sizeof(PutIn), NULL ); mStopIfError(s);

s = CH376FileClose( TURE ); /* 關(guān)閉文件,自動(dòng)計(jì)算文件長(zhǎng)度,以字節(jié)為單位寫文件,建議讓程序庫(kù)關(guān)閉文件以便自動(dòng)更新文件長(zhǎng)度 */ mStopIfError( s );

PutIn[0] = '1'; PutIn[1] = 'F'; /* 寫入數(shù)據(jù)稍作修改,準(zhǔn)備追寫 */

PathName = &nFname[0]; s = CH376FileOpenPath( PathName ); mStopIfError(s);

CH376GetFileSize( ); s = CH376ByteLocate( 0xFFFFFFFF ); /* 移動(dòng)當(dāng)前文件指針到末尾 */ mStopIfError(s);

s = CH376ByteWrite( buff, sizeof(PutIn), NULL ); mStopIfError(s);

s = CH376FileClose( TURE ); /* 關(guān)閉文件,自動(dòng)計(jì)算文件長(zhǎng)度,以字節(jié)為單位寫文件,建議讓程序庫(kù)關(guān)閉文件以便自動(dòng)更新文件長(zhǎng)度 */ mStopIfError( s );

以上是我的測(cè)試程序。 第一次在文件中寫入數(shù)據(jù)成功, 關(guān)閉之后更新。 第二次寫入數(shù)據(jù)后,文件中全部都是亂碼。

這是什么原因?


你使用UE或者WINHEX文件看下你寫進(jìn)去的16進(jìn)制數(shù)據(jù)是否正確?


寫入的16進(jìn)制數(shù)據(jù)? 沒問題阿。 我第一次寫進(jìn)去是可以的。顯示也正確。 我僅僅移動(dòng)指針再追加數(shù)據(jù) 然后所有的都亂碼了


這是TXT軟件本身的問題,你用寫字板或UE打開試一下? 解決的話將s = CH376ByteWrite( buff, sizeof(PutIn);NULL )改成: s = CH376ByteWrite( buff, sizeof(PutIn)-1, NULL );試一下?


只有登錄才能回復(fù),可以選擇微信賬號(hào)登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频