字符串处理路径问题
2005-07-04 00:12
525 查看
7.3
我在引用别人的一个3ds导入模型的代码的时候,发现他的纹理文件必须在主目录中。但是模型文件*.3ds 文件可以在任何路径下。可见他把纹理的路径设定在了主目录下,但是我想不能看上去很乱,想把模型和模型的纹理放在一个名为data的目录下,(其实纹理的路径只要是和模型文件在一个目录就好)我需要做的就是做个小的字符串处理的函数,作用是从模型文件*.3ds文件的路径中获得模型所在的目录,这个目录的路径加上纹理文件的名字就是纹理的路径咯,呵呵其实好简单。具体的实现如下:
char * addPath(char * filewithpath, char *filename)//为纹理文件加路径使纹理与模型在同一目录下
{
char * temp = new char[255];//设定新的路径存储的字符数组
int i = 0;
int j = 0;
while(filewithpath[i] != '/0')//查找模型路径的最后一个分割符"/"
{
if (filewithpath[i] == '//')//注意"/"是转义符要用"//"
j = i;
i++;
}
for (i = 0; i <=j ; i++)//把得到的目录的路径放到新的路径的数组中
{
temp[i] = filewithpath[i];
temp[i+1] = '/0';
}
i = 0;
while (filename[i] != '/0')//把纹理名字加近来
{
temp[j+i+1] = filename[i];
i++;
}
temp[j+i+1] = '/0'; //加个字符串结束标志
return temp;
}
应用的时候
CreateTexture(g_Texture[j], addPath(filename, g_3DModel[j].pMaterials[i].strFile), i);//使用纹理文件名称来装入位图
我在引用别人的一个3ds导入模型的代码的时候,发现他的纹理文件必须在主目录中。但是模型文件*.3ds 文件可以在任何路径下。可见他把纹理的路径设定在了主目录下,但是我想不能看上去很乱,想把模型和模型的纹理放在一个名为data的目录下,(其实纹理的路径只要是和模型文件在一个目录就好)我需要做的就是做个小的字符串处理的函数,作用是从模型文件*.3ds文件的路径中获得模型所在的目录,这个目录的路径加上纹理文件的名字就是纹理的路径咯,呵呵其实好简单。具体的实现如下:
char * addPath(char * filewithpath, char *filename)//为纹理文件加路径使纹理与模型在同一目录下
{
char * temp = new char[255];//设定新的路径存储的字符数组
int i = 0;
int j = 0;
while(filewithpath[i] != '/0')//查找模型路径的最后一个分割符"/"
{
if (filewithpath[i] == '//')//注意"/"是转义符要用"//"
j = i;
i++;
}
for (i = 0; i <=j ; i++)//把得到的目录的路径放到新的路径的数组中
{
temp[i] = filewithpath[i];
temp[i+1] = '/0';
}
i = 0;
while (filename[i] != '/0')//把纹理名字加近来
{
temp[j+i+1] = filename[i];
i++;
}
temp[j+i+1] = '/0'; //加个字符串结束标志
return temp;
}
应用的时候
CreateTexture(g_Texture[j], addPath(filename, g_3DModel[j].pMaterials[i].strFile), i);//使用纹理文件名称来装入位图
相关文章推荐
- 字符串处理问题----判断是否有效数字和unix路径简化
- 字符串处理strlen函数需要注意的一些小细节问题
- LabVIEW中在编辑环境和运行环境下文件保存的路径问题以及发生不同界面文件保存在同一文档中发生覆盖时的处理方法
- Struts2一个Action内包含多个请求处理方法的处理,method的使用方法,struts2中的路径问题,通配符映射
- CC/VSS等代码管理工具处理Rose的Cat文件路径问题
- 记录一下C++和C#中的字符串处理与编码格式的问题
- PHP处理字符串翻转问题总结
- 字符串处理中遇到的小问题
- LeetCode 71. Simplify Path 求绝对路径,字符串处理题
- 字段里字符串的处理问题
- C# WebApi 处理Area路径问题
- NYOJ 308 Substring 字符串处理问题
- C# 处理Oracle CLob插入或更新 字符串过长的问题
- 关于pascal语言字符串处理的问题
- 『C++ Primer学习笔记』Chapter 3——string对象、vector对象以及数组的配套类型,C风格字符串问题和处理区别
- php怎么处理截取字符串出现的乱码问题
- 关于处理字符串里姓名中间、前后有空格的问题
- Java字符串处理的一些问题
- 文件路径问题处理
- 字符串处理问题