zoukankan      html  css  js  c++  java
  • 得到一个文件夹中所有文件的名称的几个方法(命令指示符, C++, python)

    因为最近一直需要获得一个文件下的所有图片的名称,自己又总是跨平台使用,所以把自己在不同环境之下使用的方法总结如下


    1.cmd 模式下
    优点:简单
    例如,我想将一个文件夹下的所有“.jpg” 图像输出到某一个“.txt”文件

    运行-cmd-Enter
    以下指令即可。其中,两个位置分别为文件夹的目录 以及 目标目录
     表示只输出文件名,不包含其他信息。

    dir D:documentsdata_valid8820 /b >D:documentsdata_valid88201_filelist.txt

    上述得到的方法会有后缀“.jpg”.如果想不包含后缀,可以用以下方法

    去掉文件后缀:
    for /f %a in ('dir /b D:documentsdata_valid8820*.jpg') do echo %~na>>test.txt
    如果直接不指定目标目录,又没有进入目标文件夹,这种方法得到的 我的在 c盘--用户-你自己的用户名 下
    最好指定一个目录

    参考链接: http://jingyan.baidu.com/article/ed15cb1b7220061be36981fa.html


    2.python
    python中比较简单 ,使用 listdir 即可以得到 文件夹下所有文件名,但是 是一个list, 如果需要保存到 “.txt” 文件的话,可以尝试一下代码

    from os import listdir
    
    def getFileList():
        SlicePath = 'train1.txt'  # the training set
        allFileList = listdir('Training')
        output1 = open(SlicePath, 'w')
        m =len(allFileList)
        for i in range(m):
        allFileList[i] += '
    '  //ubuntu 下为
                 
        try:
            output1.writelines(allFileList)
        finally:
            output1.close()
             
    if __name__=='__main__':
    
        getFileList()   
    

    上述方法在window下得到的 txt 文件中包含后缀。 如果不想包含后缀,python 中自带 split 函数,可以提取出想要的部分。

            fileStr = FileList[i].split('.')[0]  
            FileList[i] =  fileStr + '
    '
    

    在ubuntu 下使用时,如果又有可能将txt 文件在windows 下打开时,要使用' '. 否则,在windows 下打开的txt文件不换行。


    3.c++
    c++ 中没有 较简单的方法,需要自己写程序来实现
    待更新。。

  • 相关阅读:
    java算法集训结果填空题练习2
    java算法集训结果填空题练习1
    java算法集训结果填空题练习1
    java算法集训结果填空题练习1
    java算法集训结果填空题练习1
    java算法集训结果填空题练习1
    java算法集训代码填空题练习3
    java算法集训代码填空题练习3
    java算法集训代码填空题练习3
    java算法集训代码填空题练习3
  • 原文地址:https://www.cnblogs.com/lifeofershisui/p/7521932.html
Copyright © 2011-2022 走看看