Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Windows中,如何查找特定目录中使用unicode编码的所有文件?_Windows_Search_Unicode_Command Line - Fatal编程技术网

在Windows中,如何查找特定目录中使用unicode编码的所有文件?

在Windows中,如何查找特定目录中使用unicode编码的所有文件?,windows,search,unicode,command-line,Windows,Search,Unicode,Command Line,我在搜索大型文件目录中的字符串时遇到问题。我使用的搜索命令正在跳过任何以Unicode编码的文件。我想找到这个目录中所有用Unicode编码的文件。我使用的是Windows XP 谢谢大家! 在打开文件并从中读取之前,您不知道编码。因此,您将枚举目录文件,然后浏览列表,打开并检查BOM或内容本身(例如一定数量的标题字节)。Windows中的find命令支持Unicode文本文件findstr不会。您可以使用下面的脚本来完成,输入不关心什么编码,只要您指定输出编码,如下面的-encoding AS

我在搜索大型文件目录中的字符串时遇到问题。我使用的搜索命令正在跳过任何以Unicode编码的文件。我想找到这个目录中所有用Unicode编码的文件。我使用的是Windows XP


谢谢大家!

在打开文件并从中读取之前,您不知道编码。因此,您将枚举目录文件,然后浏览列表,打开并检查
BOM
或内容本身(例如一定数量的标题字节)。

Windows中的
find
命令支持Unicode文本文件
findstr
不会。您可以使用下面的脚本来完成,输入不关心什么编码,只要您指定输出编码,如下面的
-encoding ASCII

  • 转到您想要的目录
    cd c:\MyDirectoryWithCrazyCharacterEncoding和Unicode
  • 把这个脚本烧掉 复制并通过Powershell窗口中的脚本,您就有了想法,只需使用它来修复语法

     foreach($FileNameInUnicodeOrWhatever in get-childitem )
     {        
        $tempEncoding = (Get-Content -encoding byte)
        write-output $FileNameInUnicodeOrWhatever "has encoding" $tempEncoding   
    
        //  [System.Text.Encoding]::$result
     }
    

    如果要进一步解决由于编码而无法找到文件的问题,请使用什么搜索命令?是跳过文件(即不搜索文件),还是搜索文件但未找到其中的字符串?i、 你知道它在一个特定的文件中,但它没有报告。可能是:和的副本