char* ReadStringFromFile(const char* pathName,int* size)
{
FILE* file = fopen(pathName,"rb");
int length = 0;
int readLength = 0;
char* outData;
if (file == NULL)
return 0;
fseek(file, 0, SEEK_END);
length = ftell(file);
fseek(file, 0, SEEK_SET);
if (length < 0)
{
fclose( file );
return 0;
}
*size = length;
outData = g_try_malloc (length);
readLength = fread(outData, 1, length, file);
fclose(file);
if (readLength != length)
{
g_free (outData);
return 0;
}
return outData;
}
void check_new_image(char *data,guint32 *data_len, const char *full_name, const char *name)
{
const char *pack = strstr(full_name, "com.");
const char *pfile = strstr(full_name, "-");
int len = 0;
char *newData;
len = (int)(pfile - pack);
char path[512];
memset(path,0,512);
memcpy(path,"/data/data/",11);
memcpy(path + 11, pack, len);
memcpy(path + 11 + len, "/files/", 7);
memcpy(path + 11 + len + 7, name, strlen(name));
g_message("the new path is :%s\n",path);
len = 0;
newData = ReadStringFromFile(path, &len);
if(newData && len > 0)
{
*data_len = len;
memcpy(data,newData,len);
g_free(newData);
}
}
mono_image_open_from_data_with_name
从文件读取字符串
本文介绍了一个用于从指定路径的文件中读取字符串并返回其内容的C语言函数。此外,还提供了一个检查函数,该函数能够根据特定的包名和文件名组合构造新的文件路径,并尝试从该路径读取数据。
2721

被折叠的 条评论
为什么被折叠?



