gpt4 book ai didi

powershell - 从文本文件中一次读取一个字符

转载 作者:行者123 更新时间:2023-12-03 00:22:05 24 4
gpt4 key购买 nike

我正在尝试基于一种字符类型转换文本文件中的字符:

字母> L

数字>#

有没有一种方法可以按字符迭代文件?我目前可以使其正常工作的唯一方法是在文件中逐行循环嵌套循环。如果有更简单的方法,那将减少很多代码,我将不得不遍历。

最佳答案

  • 您可以使用Get-Content -Encoding Byte并将字节值转换回字符:
    Get-Content foo.txt -Encoding Byte | foreach { [char]$_ }
  • 您可以使用Get-Content -Raw并将结果转换为[byte[]]。不建议用于大文件。

  • 上面的两个选项都将为您提供所有字符,包括换行符。由于明显的原因,选项1不适用于Unicode。选项2将。

    然后就是您已经提到的变体:两次迭代,一次一行,一次一次字符:
    Get-Content foo.txt | foreach { [char[]] $_ | foreach { ... } }

    如果您不需要换行符作为字符,我希望使用此版本,因为它应该具有合理的运行时和内存要求(例如,它将不会尝试将整个文件放入内存中)。

    关于powershell - 从文本文件中一次读取一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44072478/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com