如何遍历呢
解决方案 »
- shell编程问题
- vc++中,对话框工程怎么找到显示窗口的函数?
- 工作2年后的程序员们,你们谁自己拥有一台自己买的洗衣机?
- 高分求教:在CFormView中使用CListCtrl控件,当View改变大小的时候,如果才能改变里边控件的大小?
- 我想编个小程序监视另外一个进程的运行
- 菜鸟急问::在对话筐中如何修改xml 文件?非常感谢 高分相送
- 怎么从光驱启动到dos
- 请教如何使用在WIN200中有而WIN98不支持的变量,函数
- CPen 需要Delete吗?
- 为什么不能添加类成员变量?
- 关于在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;
}