IT術語
本地檔案傳輸協定
英文:File Protocol
中文釋義:本地檔案傳輸協定
註解:File協定主要用於訪問本地計算機中的檔案,就如同在Windows資源管理器中打開檔案一樣。
IT中的應 用:要使用File協定,基本的格式如下:file:///檔案路徑,比如要打開F盤flash資料夾中的1.swf檔案,那么可以在資源管理器或IE地址欄中鍵入:file:///f:/flash/1.swf並回車。
WINDOWS檔案
檔案(file)的常見屬性如下:hide(隱藏) system(系統) read(唯讀) write(可寫) Archive(存檔)
其中,顯示隱藏檔案的方法如下:
第一種方法:最為常用的是利用資料夾選項來顯示隱藏資料夾或檔案;
具體操作步聚如下
1、打開我的電腦,進入被隱藏的檔案或資料夾目錄,比如說D 盤;
選擇"工具"選單下面的“資料夾選項”
2、在彈出的對話框中,選擇“查看”選項卡,並滑動滑條,找到“隱藏檔案和資料夾”並選中下面的“顯示所有檔案和資料夾”;
3、點擊套用,如果有必要的話,再選擇左上角的“套用到所有資料夾”,這樣的話,所以目錄中的隱藏檔案或資料夾就已經顯示出000000來了。
提示:
在這裡,站長建議大家將隱藏受保護的作業系統檔案(推薦)項取消掉,因為,有些病毒會自加s屬性,如果此項為默認,那么就看不到病毒檔案了。
1、我們先去新建一個資料夾,並命名為“測試隱藏資料夾顯示方法” 示例為在E盤,如下圖,並將此資料夾屬性設定為“隱藏”,點擊套用:
套用以後,我們可以看到,我的E盤中有隱藏對象,如下圖,刷新以後,剛才建立的資料夾不在了,(實際是被隱藏了)
2、點擊"開始"選單--"運行"--"cmd"並回車,打開cmd命令視窗,如下圖:
我們輸入以下命令 e: 然後回車,進入e盤根目錄如下圖:
再輸入命令:attrib -h 測試隱藏資料夾顯示方法 並回車,如下圖:
再輸入dir列出子項命令,結果如下:
怎么樣,是不是已經可以看到此資料夾了呢?再回到桌面環境看看吧。
隱藏的檔案顯示出來了!
LINUX命令
LINUX 命令中file 命令
用途
確定檔案類型。
語法:
對檔案類型分類
file [ -m MagicFile] [ -d ] [ -h ] [ -i ] [ -M File ] [ -f FileList] [File...]
檢查 Magic 檔案的格式錯誤
file -c [ -m MagicFile]
描述
file 命令讀取用 File 參數或者 FileList 變數指定的檔案,在每個檔案上執行一系列測試,然後將它們按照類型分類。然後此命令將檔案類型寫入標準輸出。檔案可以是常規檔案、目錄、FIFO(指定的管道)、塊特殊檔案、字元特別檔案、符號連結或者套接字類型。
* 對於長度為零的常規檔案,將識別為空檔案。
* 對於符號連結檔案,預設情況下此連結後跟符號連結引用的檔案。
如果檔案是 ASCII 碼的格式,則 file 命令將檢查前 1024 個位元組然後確定檔案類型。如果檔案不是 ASCII 格式,則 file 命令將嘗試區分二進制數據檔案和包含擴展字元的文本檔案。
如果 File 參數指定了可執行程式或者對象模組檔案且版本號大於 0則 file 命令將顯示版本戳記。ld 命令說明了 a.out 檔案的使用。
file 命令使用 /etc/magic 來標識包含某種 magic 數字的檔案;即,任何包含可以表示類型的數字或字元串常量的檔案。
如果檔案不存在,無法讀取或者檔案狀態無法確定,那么檔案將不看作會影響退出狀態的錯誤。輸出表明檔案已被處理,但是類型仍無法確定。
當使用了 -i 標誌時,應使用以下格式標識每個 file 指定的運算元:
"%s: %s\n",file,type
除非在 POSIX 語言環境,否則不指定 type 的值,如果 file 指定為下表中列出的類型之一,type 應包含(但不限於)對應字元串。在字元串中顯示的每個空格應是一個空格。
表 1. File 實用程式輸出字元串 如果 file 是: type 應包含字元串:
目錄 目錄
FIFO fifo
套接字 套接字
塊特殊檔案 塊特殊檔案
字元特別檔案 字元特別檔案
執行檔(二進制) 執行檔
空常規檔案 空
符號連結 符號連結到
ar 歸檔庫 壓縮文檔
擴展的 cpio 格式 cpio 壓縮文檔
擴展的 tar 格式 tar 壓縮文檔
Shell 腳本命令文本
C 語言源 C 程式文本
FORTRAN 源 fortran 程式文本
如果 file 標識為符號連結,則應使用以下備用輸出格式:
"%s: %s %s\n",file,type,contents of link"
如果 file 運算元指定的檔案不存在或不可讀,則字元串 cannot open應包含為 type 欄位的一部分,但這不應當作影響退出狀態的錯誤。如果 file 運算元指定的檔案的類型不能確定,則字元串 data應包含為 type 欄位的一部分,但這不應當作影響退出狀態的錯誤。
標誌
-c 檢查指定的 magic 檔案(預設情況下,/etc/magic 檔案)有無格式錯誤。此驗證一般不進行。在此標誌下檔案輸入不執行。
-d 將任何預設系統測試套用到檔案。
-f FileList 讀取指定的檔案列表。檔案必需在每行列出一個檔案,不包含開開頭和拖尾空格。
-h 當遇到符號連結時,將檔案標識為符號連結。如果未指定 -h 標誌且 file 是指向不存在檔案的符號連結,file 應將檔案標識為符號連結,就好像指定了 -h 標誌。
-i 如果檔案不是常規檔案,則不嘗試進一步對檔案類型進行分類,但如描述中指定的那樣標識檔案。
-m MagicFile 指定 magic 檔案的檔案名稱(預設情況下,/etc/magic)。
-M File 指定包含應套用於檔案以對其分類的測試的檔案的名稱。不應套用預設系統測試。
退出狀態
此命令返回下列出口值:
0 成功結束。
>0 發生錯誤。
示例
1. 要顯示檔案中包含的信息類型,請輸入:
file myfile
這將顯示檔案 myfile的類型(例如目錄,數據,ASCII 文本,C 程式源,壓縮文檔)。
2. 要顯示在檔案名稱列表中指定的每個檔案的類型,請輸入:
file -f filenames
這將顯示在 filenames 列表中指定的每個檔案的類型。每個檔案必須單獨出現在一行上。
註:
要從 file 命令獲取定製的信息,請和 -m 標誌一起使用獨立的 magic 檔案。不建議編輯唯讀的 /etc/magic 檔案。
檔案
/usr/bin/file 包含 file 命令。
/etc/magic 包含檔案類型資料庫。(或者是/usr/share/magic)
即使出現新的檔案格式,只要知道檔案原有簽名,在magi
c檔案里進行追加就可以識別這個檔案
編程用語
Java
Java中的File
引入java.io.File包
File構造方法:
File(File parent, String child) 根據 parent 抽象路徑名和 child 路徑名字元串創建一個新 File 實例。
File(String pathname) 通過將給定路徑名字元串轉換為抽象路徑名來創建一個新 File 實例。
File(String parent, String child) 根據 parent 路徑名字元串和 child 路徑名字元串創建一個新 File 實例。
File常用方法:
canExecute() 測試應用程式是否可以執行此抽象路徑名表示的檔案。
canRead() 測試應用程式是否可以讀取此抽象路徑名表示的檔案。
canWrite() 測試應用程式是否可以修改此抽象路徑名表示的檔案。
compareTo(File pathname) 按字母順序比較兩個抽象路徑名。
createNewFile() 若且唯若不存在具有此抽象路徑名指定名稱的檔案時,不可分地創建一個新的空檔案。
delete() 刪除此抽象路徑名表示的檔案或目錄。
deleteOnExit() 在虛擬機終止時,請求刪除此抽象路徑名表示的檔案或目錄。
equals(Object obj) 測試此抽象路徑名與給定對象是否相等。
exists() 測試此抽象路徑名表示的檔案或目錄是否存在。
getAbsoluteFile() 返回此抽象路徑名的絕對路徑名形式。
getAbsolutePath() 返回此抽象路徑名的絕對路徑名字元串。
getCanonicalFile() 返回此抽象路徑名的規範形式。
getCanonicalPath() 返回此抽象路徑名的規範路徑名字元串。
getFreeSpace() 返回此抽象路徑名指定的分區中未分配的位元組數。
getName() 返回由此抽象路徑名表示的檔案或目錄的名稱。
getParent() 返回此抽象路徑名父目錄的路徑名字元串;如果此路徑名沒有指定父目錄,則返回 null。
getParentFile() 返回此抽象路徑名父目錄的抽象路徑名;如果此路徑名沒有指定父目錄,則返回 null。
getPath() 將此抽象路徑名轉換為一個路徑名字元串,更多關於File的使用幫助可以參考引用文章。
C#
C#中FILE
一、創建指定路徑的檔案
創建檔案語法重載原型為:File.Create(Stringfilepath);
我們要注意:在程式中使用File類,必須使用using語句引入System命令空間IO
二、複製檔案
複製檔案語法重載原型為:File.Copy (String,String,Boolean);
第三個參數如果為true,表示複製時如果目標檔案已經存在,就替換原來的檔案。如果是false,則不替換。如果不寫,默認替換原檔案。
三、移動檔案
移動檔案語法重載原型為: File.Move(String,String);
注意:Move方法沒有採用3個參數的重載,如果檔案存在,則出現異常。
四、設定檔案的屬性
File.SetAttributes(filepath,FileAttributes.Archive);//設定檔案的屬性
獲取或者修改檔案的屬性,都要用到FileAttributes枚舉,其枚舉值如下:
Archive:檔案是存檔的。
Hidden:檔案是隱藏的。
ReadOnly:檔案是唯讀的。
Normal:檔案是正常的。
五,檢測檔案是否存在
移動檔案語法重載原型為:File.Exists(string)
C++
C++中的FILE
需要加入stdio來使用FILE。
格式:FILE *name = fopen(filename,type);
filename是檔案名稱
type是指示檔案讀取方式的字元串:
"r" = read "w" = write "rw" = read≀ite
定義*name後,便可以使用fprintf(*FILE,string,var1,var2,..)來快速讀入讀出檔案了。
利用FILE* 和fprintf的檔案I/O速度是使用fstream檔案流的256倍。
C語言
C語言中FILE
VC中
在"stdio.h"中有如下定義
struct _iobuf {
char *_ptr; //檔案輸入的下一個位置
int _cnt; //當前緩衝區的相對位置
char *_base; //指基礎位置(即是檔案的其始位置)
int _flag; //檔案標誌
int _file; //檔案的有效性驗證
int _charbuf; //檢查緩衝區狀況,如果無緩衝區則不讀取
int _bufsiz; //緩衝區的大小
char *_tmpfname; //臨時檔案名稱
};
typedef struct _iobuf FILE;
Linux
Linux
中FILE
struct file {
/* fu_list becomes invalid after file_free is called and queued via fu_rcuhead for RCU freeing */
union {
struct list_headfu_list;
struct rcu_head fu_rcuhead;
} f_u;
struct pathf_path;
#define f_dentryf_path.dentry
#define f_vfsmntf_path.mnt
const struct file_operations*f_op;
spinlock_tf_lock; /* f_ep_links, f_flags, no IRQ */
atomic_long_tf_count;
unsigned int f_flags;
fmode_tf_mode;
loff_tf_pos;
struct fown_structf_owner;
const struct cred*f_cred;
struct file_ra_statef_ra;
u64f_version;
#ifdef CONFIG_SECURITY
void*f_security;
#endif
/* needed for tty driver, and maybe others */
void*private_data;
#ifdef CONFIG_EPOLL
/* Used by fs/eventpoll.c to link all the hooks to this file */
struct list_headf_ep_links;
#endif /* #ifdef CONFIG_EPOLL */
struct address_space*f_mapping;
#ifdef CONFIG_DEBUG_WRITECOUNT
unsigned long f_mnt_write_state;
#endif
};