• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            積木

            No sub title

              C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
              140 Posts :: 1 Stories :: 11 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(1)

            我參與的團隊

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            文章轉自:http://blogger.org.cn/blog/more.asp?name=hongrui&id=28011
            windows平臺下使用vc或gcc
            函數名: access
            功  能: 確定文件的訪問權限
            用  法: 
            int access(const char *filename, int amode); 文件的話還可以檢測讀寫權限,文件夾的話則只能判斷是否存在
            #include 
            "stdafx.h"
            #include  
            <io.h>
            #include  
            <stdio.h>
            #include  
            <stdlib.h>

            void main( void )
            {
               
            /* Check for exist */
               
            if( (_access( "C:\\windows"0 )) != -1 )
               {
                  printf( 
            "windows exists " );
                 
                  
               }
            }
            其實判斷文件存在fopen就行了。
            linux下或者gcc下
            #include 
            <stdio.h>
            #include 
            <stdlib.h>

            #include 
            <dirent.h>
            #include 
            <unistd.h>
            void main( void )
            {
             DIR 
            *dir = NULL;
                 
            /* Open the given directory, if you can. */  
                dir 
            = opendir( "C:\\windows" );
                 
            if( dir != NULL ) {
                     printf( 
            "Error opening " );
                     
            return ;
                 }
            }
            opendir() 返回的 DIR 指針與 fopen() 返回的 FILE 指針類似,它是一個用于跟蹤目錄流的操作系統特定的對象。
            使用c
            ++標準庫
            #include 
            "stdafx.h"
            #include 
            <iostream>
            #include 
            <fstream>
            using namespace std;
            #define FILENAME  "C:\\windows"
            int main()
            {
                 fstream file;
                 file.open(FILENAME,ios::
            in);
                 
            if(!file)
                 {
                     cout
            <<FILENAME<<"存在";
                  }
                  
            else
                  {
                      cout
            <<FILENAME<<"不存在";
                  }
                  
            return 0;
            }
            gcc編譯去掉#include 
            "stdafx.h"即可
            使用Windows API PathFileExists

            #include 
            "stdafx.h"
            #include 
            <iostream>
            #include 
            <windows.h>
            #include 
            <shlwapi.h>
            #pragma   comment(lib,
            "shlwapi.lib"
            using namespace std;
            #define FILENAME  "C:\\windows"
            int main()
            {
                  
            if (::PathFileExists(FILENAME))
                   cout
            <<"exist";
                
            return 0;
            }

            注意windows.h 一定要在shlwapi.h前面定義
            使用boost的filesystem類庫的exists函數:

            #include 
            <boost/filesystem/operations.hpp>
            #include 
            <boost/filesystem/path.hpp>
            #include 
            <boost/filesystem/convenience.hpp>

            int GetFilePath(std::string &strFilePath)
            {
                
            string strPath;
                
            int nRes = 0;

                
            //指定路徑

                strPath 
            = "D:\myTest\Test1\Test2";
                
            namespace fs = boost::filesystem;

                
            //路徑的可移植

                fs::path full_path( fs::initial_path() );
                full_path 
            = fs::system_complete( fs::path(strPath, fs::native ) );
                
            //判斷各級子目錄是否存在,不存在則需要創建

                
            if ( !fs::exists( full_path ) )
                {
                    
            // 創建多層子目錄

                    
            bool bRet = fs::create_directories(full_path);
                    
            if (false == bRet)
                    {
                        
            return -1;
                    }

                }
                strFilePath 
            = full_path.native_directory_string();

                
            return 0;
            }


            posted on 2014-03-23 21:27 Jacc.Kim 閱讀(3503) 評論(0)  編輯 收藏 引用
            久久九九久精品国产免费直播| 97久久精品午夜一区二区| 久久综合丝袜日本网| 久久久久久国产精品无码下载 | 亚洲精品国产第一综合99久久| 亚洲七七久久精品中文国产| 久久天天躁狠狠躁夜夜avapp| 亚洲精品美女久久777777| 久久噜噜电影你懂的| 香蕉久久永久视频| 久久婷婷五月综合97色一本一本| 国产精品九九久久免费视频 | 精品久久777| 久久精品免费大片国产大片 | 国产精品久久久久久| 国产精品中文久久久久久久| 国产精品久久自在自线观看| 久久久久久精品久久久久| 亚洲综合精品香蕉久久网97| 色偷偷久久一区二区三区| 麻豆久久| 久久久国产精品亚洲一区| 亚洲精品无码久久千人斩| 日本国产精品久久| 精品人妻伦九区久久AAA片69| 国产精品女同久久久久电影院| 久久久无码精品亚洲日韩蜜臀浪潮| 精品久久久久久无码人妻蜜桃 | 久久精品夜夜夜夜夜久久| 久久人人爽人人爽人人片AV不 | 日本精品久久久中文字幕| 亚洲国产精品无码成人片久久| 久久久久久免费视频| 久久无码人妻精品一区二区三区| 欧美久久精品一级c片片| 99久久精品国产免看国产一区| 久久久久人妻一区精品色| 亚洲AV无一区二区三区久久| 日韩久久久久久中文人妻| 久久久精品人妻一区二区三区四| 蜜臀久久99精品久久久久久小说|