2012-03-20 22 views
1

我有一个config.txt文件。在使用nocompress extension =“txt”选项的apk版本中,文件未被压缩。然后我打开我的Java代码资产管理器并将其传递给本地函数。最后,我打开一个文件*使用下面的代码。 问题是,当调用fgets(行,32,文件) - 其中行是char *时 - 行的内容不是该文件的第一行。AssetManager和本机代码

AAssetManager* mgr = AAssetManager_fromJava(env, assetManager); 
if(NULL == mgr) return -1; 
AAsset* asset = AAssetManager_open(mgr, "config.txt", AASSET_MODE_UNKNOWN); 
if (NULL == asset) { 
    return -1; 
} 
off_t start, length; 
int fd = AAsset_openFileDescriptor(asset, &start, &length); 
if (fd < 0) 
    return -1; 
FILE * file = fdopen(fd, "r"); 

回答