CFile从文件尾开始读到tail数据截取之后的数据 如何遍历呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 “CFile从文件尾开始读到tail数据”1.“tail” 是 个 字符串 ?2. 截取 tail 后的数据?3,找到 tail, 读取 位置4. 文件end 到 tail de 距离,就是 要截取的 长度。 read函数不是一个读一个buffer大小 我怎么找出文件中tail字符串呢???? m_MPEGFile.Open(SongSelect, CFile::modeRead|CFile::typeBinary); ULONGLONG FileLen = m_MPEGFile.SeekToEnd();//已经指向尾部了怎么找出tail字符串呢??? "read函数不是一个读一个buffer大小 我怎么找出文件中tail字符串呢"1. 可以 打开后 一次 读完。2. 如果 是 binary 文件 就要 搜索 buffer 中的 “tail”a. 从头到尾 先 找 ‘t', b。找到 t 后 再看 后面 是不是 “ail” 晕,有具体代码吗? m_MPEGFile->Seek(150,CFile::end); TCHAR_ Buffer[256];m_MPEGFile->Read(Buffer,256); //从尾部开始读 150个字节 可以吗???代码怎么写??? 短的话.全不读出到buff. 再处理. 先得到文件总大小.减去150.得到开始点seek之. 读150字节.ok然后把读到的150 逆序.就是结尾倒读150了 "//从尾部开始向前读 150个字节 可以吗???代码怎么写???"问题是 这 150 字节 里 有没有 “tail”,有的话 好说, 没有 的 话 怎么办? 移动文件指针(-150, 从结尾);读文件(buff, 150); //从结尾出读150个字节逆序(buff); //从结尾倒着读150个字节 逆序(buff); //从结尾倒着读150个字节 //函数名??????移动文件指针(-150, 从结尾);读文件(buff, 150); //从结尾出读150个字节逆序(buff); //从结尾倒着读150个字节 试试://Find a string in a buffer:size_t FindStringInBuffer (char* buffer, char* search, size_t buffersize){ char* buffer0 = buffer; size_t len = strlen(search); bool fnd = false; while (!fnd) { fnd = true; for (size_t i=0; i<len; i++) { if (buffer[i]!=search[i]) { fnd = false; break; } } if (fnd) return buffer - buffer0; buffer = buffer + 1; if (buffer - buffer0 + len >= buffersize) return -1; } return -1;} 为什么CComoBox添加不了字符串啊? 关于字符指针与16进制 问题 在线等 关于打洞的问题 ascii 乱码问题,大家帮帮我 如何调出"关闭windows"对话框 贡献 在线等待,马上送分:怎样将Query查询的数据集全部删除,数据库SQL中的数据也删除 如何模拟输入键盘? 成员初始化列表中,应该都有哪些呀? VC生成的最小的程序要多大?内详 关于在view上创建一个dialog的诡异问题(全部可用分都给了) 请教,WTL的cprocessbarctrl如何改变背景色
1.“tail” 是 个 字符串 ?
2. 截取 tail 后的数据?
3,找到 tail, 读取 位置
4. 文件end 到 tail de 距离,就是 要截取的 长度。
m_MPEGFile.Open(SongSelect, CFile::modeRead|CFile::typeBinary);
ULONGLONG FileLen = m_MPEGFile.SeekToEnd();//已经指向尾部了怎么找出tail字符串呢???
1. 可以 打开后 一次 读完。
2. 如果 是 binary 文件 就要 搜索 buffer 中的 “tail”
a. 从头到尾 先 找 ‘t',
b。找到 t 后 再看 后面 是不是 “ail”
m_MPEGFile->Seek(150,CFile::end);
TCHAR_ Buffer[256];
m_MPEGFile->Read(Buffer,256); //从尾部开始读 150个字节 可以吗???代码怎么写???
然后把读到的150 逆序.就是结尾倒读150了
问题是 这 150 字节 里 有没有 “tail”,有的话 好说, 没有 的 话 怎么办?
移动文件指针(-150, 从结尾);
读文件(buff, 150); //从结尾出读150个字节
逆序(buff); //从结尾倒着读150个字节
移动文件指针(-150, 从结尾);
读文件(buff, 150); //从结尾出读150个字节
逆序(buff); //从结尾倒着读150个字节
size_t FindStringInBuffer (char* buffer, char* search, size_t buffersize)
{
char* buffer0 = buffer; size_t len = strlen(search);
bool fnd = false;
while (!fnd)
{
fnd = true;
for (size_t i=0; i<len; i++)
{
if (buffer[i]!=search[i])
{
fnd = false;
break;
}
}
if (fnd) return buffer - buffer0;
buffer = buffer + 1;
if (buffer - buffer0 + len >= buffersize) return -1;
}
return -1;
}