导航:首页 > 文件目录 > c获取文件绝对路径

c获取文件绝对路径

发布时间:2024-11-29 00:46:58

㈠ c语言读取文件的路径怎么设定

//获取指定目录下的所有文件列表 author:wangchangshaui jlu
char** getFileNameArray(const char *path, int* fileCount)
{
int count = 0;
char **fileNameList = NULL;
struct dirent* ent = NULL;
DIR *pDir;
char dir[512];
struct stat statbuf;

//打开目录
if ((pDir = opendir(path)) == NULL)
{
myLog("Cannot open directory:%s\n", path);
return NULL;
}
//读取目录
while ((ent = readdir(pDir)) != NULL)
{ //统计当前文件夹下有多少文件(不包括文件夹)
//得到读取文件的绝对路径名
snprintf(dir, 512, "%s/%s", path, ent->d_name);
//得到文件信息
lstat(dir, &statbuf);
//判断是目录还是文件
if (!S_ISDIR(statbuf.st_mode))
{
count++;
}
} //while
//关闭目录
closedir(pDir);
// myLog("共%d个文件\n", count);

//开辟字符指针数组,用于下一步的开辟容纳文件名字符串的空间
if ((fileNameList = (char**) myMalloc(sizeof(char*) * count)) == NULL)
{
myLog("Malloc heap failed!\n");
return NULL;
}

//打开目录
if ((pDir = opendir(path)) == NULL)
{
myLog("Cannot open directory:%s\n", path);
return NULL;
}
//读取目录
int i;
for (i = 0; (ent = readdir(pDir)) != NULL && i < count;)
{
if (strlen(ent->d_name) <= 0)
{
continue;
}
//得到读取文件的绝对路径名
snprintf(dir, 512, "%s/%s", path, ent->d_name);
//得到文件信息
lstat(dir, &statbuf);
//判断是目录还是文件
if (!S_ISDIR(statbuf.st_mode))
{
if ((fileNameList[i] = (char*) myMalloc(strlen(ent->d_name) + 1))
== NULL)
{
myLog("Malloc heap failed!\n");
return NULL;
}
memset(fileNameList[i], 0, strlen(ent->d_name) + 1);
strcpy(fileNameList[i], ent->d_name);
myLog("第%d个文件:%s\n", i, ent->d_name);
i++;
}
} //for
//关闭目录
closedir(pDir);

*fileCount = count;
return fileNameList

㈡ vc获取本程序文件路径,并打开本文件夹另一个EXE

#include<iostream>
#include<windows.h>//这个必须要有
#include<string>//字符串处理函数

usingnamespacestd;

intmain(){
charszFileName[256]="";//待会存完整路径
stringstrAnotherExe="pipe.exe";//要执行的另外一个exe的名称

//获得程序的运行路径,包含本程序名
GetMoleFileNameA(NULL,szFileName,256);
stringstrFileName=szFileName;//用string处理比较方便

//删掉本程序名,只保留路径
size_tslashIndex=strFileName.rfind('\');
strFileName.erase(slashIndex+1);

//拼接要启动的程序的完整文件名
strFileName+=strAnotherExe;
cout<<"Anotherexepath:"<<strFileName<<endl;

//在当前程序中启动外部程序,输出会进入本程序
//system(strFileName.c_str());

//在新的窗口中打开外部程序
strFileName="start"+strFileName;
system(strFileName.c_str());

return0;
}


主要思路是GetMoleFileNameA获得程序运行时的绝对路径,包含程序名。

因此只要删掉程序名,然后拼接上另外的一个程序名就可以了。

用system("程序名")可以启动一个子进程,然后主进程卡在system处,等子进程结束,主进程才继续往下走。

用system("start 程序名")可以在新窗口中打开进程,不等子进程结束,主进程就继续往下走。


PS:如果编译器提示没有system函数,请包含stdlib.h头文件。

㈢ C语言知道文件名如何获取文件路径

两种方式:绝对路径和相对路径.
绝对路么要完整的路径及文件名;
相对路径与源程序在一个路径下..

㈣ C语言中怎么用绝对路径

system("cmd /c 绝对路径");

比如你要访问c:dos c123.bat

就是system("cmd /c c:\dos\tc\123.bat");

㈤ c语言中如何得到当前文件所在位置

如果是通过open方式打开的,那么第一个参数就是文件路径信息:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int open(const char *path, int oflag, /* mode_t mode */...);

如果是通过fopen方式打开的,那么第一个参数就是文件路径信息:
#include <stdio.h>
FILE *fopen(const char *filename, const char *mode);

无论通过open还是fopen打开文件,都必须先知道文件路径信息,尽管可能是相对路径。
如果知道了filename的内容,我们就可以定位它的绝对路径,也就是你说的完全路径。

1. filename本身就是绝对路径,ok。
2. filename是相对路径,那么先通过getcwd获取进程的执行路径,然后再获取绝对路径即可。
#include <unistd.h>
extern char *getcwd(char *buf, size_t size);

但是,如果进程在打开文件后又执行了chdir、fchdir之类函数的话,估计就不能够再获取文件路径信息了。
#include <unistd.h>
int chdir(const char *path);
int fchdir(int fildes);

㈥ 如何用C语言实现“获取可执行文件的绝对路径”

main参数啊!
intmain(intargc,char*argv[])
{
printf(argv[0]);
return0;
}
这样得到一个字符串,从中提取出路径不是难事

㈦ vc中已知文件的绝对路径怎么获得文件名和所在文件夹啊

你可以用getPathName等函数(至于这个函数的名称有没有记错我就不敢保证了),你可以在MSDN中查,专方法如下:

1。打开属MSDN
2。单击“索引”
3。输入CFile 这个类,
然后查看这个类的成员函数,
如果在CFile 中查不到相关的函数,那么可以查找它的父类或者SDK

外:有很多函数其实是可以在MSDN中查到的,主要你大概知道这个函数功能或所属类就行了。

㈧ 怎么把文件保存到绝对路径

1. 相对路径
1。

什么是绝对路径 绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,绝对路径一般在CGI程序的路径配置中经常用到,而在制作网页中实际很少用到。大家不用管它。

2。什么是相对路径 顾名思义,相对路径就是相对于当前文件的路径。

网页中一般表示路径使用这个方法。 比如一个文件的路径是 ,表示dark。

html文件是在mine目录中的。那么这个页面中如果有个连接是指向网站首页index。

html的,这个连接就应该这样表示:。

/index。html。

/ 表示上一级目录,第一个。

/表示回到feel目录,再一个。 。

/就表示回到了 也就是根目录。如果这个dark。

html文件中还有一个图片yyy。,是在mine目录中的images目录下,那么,可以看到,dark。

html文件与images目录是同级的,也就是在同一个目录mine下。那么,这个图片的连接地址就应该是:images/yyy。

。images前面没有任何字符,表示就在同一个目录下。

还有一个方法可以让你不用考虑回到哪个目录,那就是根目录表示法。以“/”这个斜杠标记来表示根目录,其他文件就以这个为参照。

比如,上例中连接index。html的连接就可以写成:/index。

html。图片连接就可以写成:/feel/mine/images/yyy。

。 实际上,网站路径结构就是你硬盘上某个目录下的路径结构。

象上面图片的连接,就好比你在本地打开这个图片时进入目录的顺序,先进入feel目录,再进入mine和images目录,然后就找到了yyy。 。

明白了这一点,相信你已经懂得了什么是相对路径。 。
2. 文件怎样储存才可做到绝对隐秘
这是我以前在网上找的方法,保证达到你的满意,除了你别人打也打不开是删也删不掉呀,如果实在不明白就发邮箱给我,我把方法发给你

点 开始--运行--输入"cmd"--点确定,你会打开dos窗口

新建 md d:\123..\

打开 start d:\123..\

删除 rd d:\123..\

加密软件不行,同事肯定要问你密码

在这些推荐一个好办法,我也在用这个方法,比虽加密强多了,大多数人学会了就藏片片,而且点右键看属性占用为O,让别人以为是没用的东西,删又删不了,打又打不开(其它当然可以打开了,只是别人不懂吧如遇到懂这个技巧的就麻烦了)废话不多说,看下面的

教你建一个别人打不开的文件夹

相信大家都遇到过自己的一些隐私文件不愿意让别人看到的情况吧,怎么解决呢?隐藏起来?换个名字?或者加密?这些办法都可以办到,其实还有一种方法,就是建立一个别人既不能进入又不能删除的文件夹,把自己的隐私文件放进去,别人就看不到啦,下面讲讲如何实现,很简单的。

第一步:在运行中输入cmd,回车,打开命令行窗口

第二步:在命令行窗口中切换到想要建立文件夹的硬盘分区,如D盘

第三步:输入 MD 123..\回车,注意文件夹名后有2个小数点

OK,搞定,看看你的D盘下面是不是多了一个名为123.的文件夹了?它是既不能进入又不能被删除的!不信你就试试看吧

你再注意这个文件大小,点文件右键,再点属性,是大小为0.我里面放了好多片片。。。。。儿童不宜 - -!

那么,如果自己想删除或者进入这个文件夹,又应该如何操作呢?同样也很简单。

如果想删除,在命令行窗口中输入 rd 123..\回车,即可删除,当然删除前请确认里面的文件都是不需要的,不要删错了,呵呵。

如果想进入,在命令行窗口中输入start d:\123..\(注意这里一定要是文件夹的绝对路径,否则无法打开即可打开此文件夹),你就可以随心所欲的把不想让别人看到的资料放进去啦!

据说是藏*最隐蔽的地方。,看看,我放了那么多片片。。。。

据说这个文件夹90%学会了都去放片片

据说90%都为这么好贴子来回贴

有朋友问有没有更快的办法进入加锁的文件夹

当然有啦,那就是用批处理命令就可以搞定

1、新建一个文本文件

2、在文本内输入上面的命令:start d:123.. ,然后保存退出

将刚才的TXT文本重命名为XXX.bat

以后要进入这个文件夹,只要双击XXX.bat这个文件就可以了,是不是方便多了
3. 如何把文件的绝对路径改为相对路径
相对路径,就是相当你当前文件的位置

比如你当前这个文件位置在 f:\zx\下面,

你的其它A 、B、C 文件也在该下面,

那就是相对于当前文件来说,在相同目录下,所以路径可以不用填写,直接填写文件名就可以了<frame src=a name=aframe>

如果你的当前文件在F:\ZX 下面,那就要从当前目录开始往下写<frame src=zx\a name=aframe>

如果你引用的文件在当前文件之上,就要在路径前加 ..\

如:<frame src=..\a name=aframe>
4. 请问紧急啊
具体步骤:一、菜单栏→插入→对象→windows media player→右键→属性→自定义→选择歌曲完整路径 (xxx.xxx)你自己最好从网上先找到这首歌曲

控件布局→选择模式→invisible(如果想使视频框隐藏)

退出设计模式

最后别忘了保存

二、将PPT转换为flash

三、音乐文件不能“嵌入”,只能作为“对象” *** 入,或者说不能“融合”

1.把音乐文件和PPT文件放在同一个文件夹下,到其他地方播放的时候一起拷贝到目标电脑中

2.文件→打包成CD→复制到文件夹,选择要保存的位置,到其他地方播放的时候一起拷贝到目标电脑中 (或直接刻录成CD)

3.发送电子邮件
5. 如何把绝对路径变成相对路径
7月4日 13:27 1.什么是绝对路径

绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,绝对路径一般在CGI程序的路径配置中经常用到,而在制作网页中实际很少用到。大家不用管它。

2.什么是相对路径

顾名思义,相对路径就是相对于当前文件的路径。网页中一般表示路径使用这个方法。

比如一个文件的路径是,表示dark文件是在mine目录中的。那么这个页面中如果有个连接是指向网站首页index的,这个连接就应该这样表示:../../index。 ../ 表示上一级目录,第一个../表示回到feel目录,再一个../就表示回到了文件中还有一个图片yyy.,是在mine目录中的images目录下,那么,可以看到,dark文件与images目录是同级的,也就是在同一个目录mine下。那么,这个图片的连接地址就应该是:images/yyy.。images前面没有任何字符,表示就在同一个目录下。

还有一个方法可以让你不用考虑回到哪个目录,那就是根目录表示法。以“/”这个斜杠标记来表示根目录,其他文件就以这个为参照。比如,上例中连接index的连接就可以写成:/index。图片连接就可以写成:/feel/mine/images/yyy.。

实际上,网站路径结构就是你硬盘上某个目录下的路径结构。象上面图片的连接,就好比你在本地打开这个图片时进入目录的顺序,先进入feel目录,再进入mine和images目录,然后就找到了yyy.。明白了这一点,相信你已经懂得了什么是相对路径。

阅读全文

与c获取文件绝对路径相关的资料

热点内容
压缩文件传电脑打不开 浏览:34
如何弄个自己的app 浏览:361
如何在银行app中改密码 浏览:316
什么app拍视频又瘦又高 浏览:979
编程语言foo是什么意思 浏览:826
如何不用APP连接斐讯手环 浏览:698
王菲版本的无地自容 浏览:489
编程如何调用tkinter 浏览:512
电气工程的编程主要是什么 浏览:112
word重复标题行单元格边框 浏览:977
易语言官方网站 浏览:622
如何比对行的数据库 浏览:868
c获取文件绝对路径 浏览:739
qq空间头像旁边有个心 浏览:581
rom文件zip格式 浏览:41
linux读取目录下的文件夹 浏览:4
有没有裸体app软件 浏览:249
哪个app可以看好友距离 浏览:75
dbf文件找不到 浏览:174
如何搞word文件 浏览:393

友情链接