GTK Gossip: 目錄資訊
来源:互联网 发布:天猫魔盒安装直播软件 编辑:程序博客网 时间:2024/05/17 23:15
如果您要取得目錄的資訊,可以使用GDir及其相關的函式,您可以使用g_dir_open()函式指定一個目錄路徑,這會傳回GDir物件,接著您可以使用g_dir_read_name()讀取目錄下的檔案名稱。
直接來看個範例,下面這個程式示範如何從命令列引數輸入要查詢的目錄,並顯示該目錄下的內容:
- dir_demo.c
#include <glib.h>
void listDir(const gchar *parent, int hier) {
const gchar *file, *fullPath;
GDir *dir;
int i;
dir = g_dir_open(parent, 0, NULL);
while((file = g_dir_read_name(dir))) {
for(i = 0; i < hier; i++) {
g_print(" ");
}
fullPath = g_build_filename(parent, file, NULL);
if(g_file_test(fullPath, G_FILE_TEST_IS_DIR)) {
g_print("[%s]/n", file);
listDir(fullPath, hier + 1);
}
else {
g_print("%s/n", file);
}
}
g_dir_close(dir);
}
int main(int argc, char *argv[]) {
listDir(argv[1], 0);
return 0;
}
在程式中,g_build_filename()可以協助建立檔案路徑名稱,您可以指定目錄或檔案名稱,最後以一個NULL作為結尾,g_build_filename()會自行依作業系統,使用適當的目錄分隔符號(Linux下的/或Windows下的/),建立完整的檔案或目錄路徑。
一個執行的範例如下所示:
[hibernate-3.2]
build.bat
build.sh
build.xml
changelog.txt
[doc]
[api]
allclasses-frame.html
allclasses-noframe.html
constant-values.html
deprecated-list.html
help-doc.html
index-all.html
index.html
jdstyle.css
[org]
[hibernate]
[action]
..略
另外還有幾個簡便的檔案操作函式,像是g_rename()可更改檔案名稱,g_remove()可移除檔案,g_rmdir()可刪除目錄,g_mkdir()可建立目錄等,這些都可以在 File Utilities 中查詢到使用方式。
- GTK Gossip: 目錄資訊
- GTK Gossip: Ubuntu 下安裝 GTK
- GTK Gossip: GTK 事件處理函式
- GTK Gossip: GtkTable
- GTK Gossip: 簡介 Glade
- GTK Gossip: GtkMessageDialog
- GTK Gossip: GtkAboutDialog
- GTK Gossip: GtkEntry
- GTK Gossip: GtkSpinButton
- GTK Gossip: GtkTextView
- GTK Gossip: GtkComboBox
- GTK Gossip: GtkNotebook
- GTK Gossip: GtkPaned
- GTK Gossip: GtkScrolledWindow
- GTK Gossip: GtkHandleBox
- GTK Gossip: GtkUIManager
- GTK Gossip: GtkProgressBar
- GTK Gossip: GtkToolBar
- java的反射技术功能十分强大,整理一些资料!!
- SQL Server 数据库系统对象应用(1)
- 2009年07月《安全天下事之安全并不孤立》
- 修改Sequence初始值
- hangye5:09年做行业网址导航不如做行业网站联盟
- GTK Gossip: 目錄資訊
- Linux 下的ps命令
- C#中As 及Is 的用法
- VB.Net内存管理与内存释放的方法
- C# 加载自定义鼠标样式
- fastreport3和TeeChart8.01在Delphi6上安装步骤
- Chrome浏览器扩展学习之 - 添加书签
- 2009年08月《安全天下事之有连接的注入与无连接的获取》
- Java 解析XML的四种方法