• <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 閱讀(3512) 評論(0)  編輯 收藏 引用
            精品久久久久久久久中文字幕| 久久久无码一区二区三区| 久久精品国产黑森林| 亚洲人成电影网站久久| 久久国产色AV免费观看| 国产成人无码精品久久久免费| 亚洲日韩欧美一区久久久久我| 无码人妻少妇久久中文字幕蜜桃| 国产一级持黄大片99久久 | 国产精品国色综合久久| 久久久久久久国产免费看| 久久夜色精品国产噜噜麻豆| 亚洲国产成人久久综合碰碰动漫3d| 亚洲一区精品伊人久久伊人| 人人狠狠综合久久亚洲88| 久久婷婷五月综合97色直播| 亚洲国产精品久久久久婷婷软件 | 久久这里有精品视频| 97久久精品无码一区二区天美| 亚洲国产成人精品久久久国产成人一区二区三区综 | 久久久久久久久久久| 国产精品免费看久久久香蕉| 久久人人爽人人爽人人片AV不| 久久亚洲国产精品五月天婷| 99久久精品国产毛片| 久久精品国产99久久久| 国产成人久久精品一区二区三区| 精品久久久久久久久久久久久久久| 99久久无码一区人妻a黑| 欧美午夜精品久久久久免费视| 思思久久99热只有频精品66| 久久午夜免费视频| 午夜视频久久久久一区| 人妻丰满?V无码久久不卡| 亚洲国产成人久久一区久久| 美女久久久久久| 久久久久久久免费视频| 国产69精品久久久久APP下载| 亚洲国产精品综合久久网络| 青青草国产97免久久费观看| 久久综合鬼色88久久精品综合自在自线噜噜|