如果没有,那么将 TXT 批量转换为 MD 文件的方法有吗?
相关帖子
-
-
-
-
-
-
-
-
让豆包编了一段 PowerShell 代码,将所有 TXT 文件放到你指定的目录(如:C:\Your\Folder\Path)下,然后在 PowerShell 里复制运行下面的代码,就能批量转换了。我自己试了一下,可以的。
操作步骤
- 打开 PowerShell:你可以通过在 Windows 搜索栏输入 “PowerShell”,然后选择 “Windows PowerShell” 或者 “Windows PowerShell ISE” 来打开。如果你希望以管理员身份运行,就在搜索结果中右键点击并选择 “以管理员身份运行”。
- 编写并执行脚本:在 PowerShell 窗口中输入下面的脚本代码,然后按回车键执行。
# 定义包含 TXT 文件的文件夹路径,需替换为实际路径 $folder = "C:\Your\Folder\Path" # 获取指定文件夹及其子文件夹中的所有 TXT 文件 Get-ChildItem -Path $folder -Filter *.txt -Recurse | ForEach-Object { # 获取文件的完整内容 $content = Get-Content -Path $_.FullName -Raw # 以 UTF-8 无 BOM 编码将内容写回文件 [System.IO.File]::WriteAllText($_.FullName, $content, [System.Text.UTF8Encoding]::new($false)) }
代码解释
- 定义文件夹路径:
$folder = "C:\Your\Folder\Path"
这里你需要把"C:\Your\Folder\Path"
替换成实际包含 TXT 文件的文件夹路径。 - 获取 TXT 文件:
Get-ChildItem -Path $folder -Filter *.txt -Recurse
会递归地获取指定文件夹及其子文件夹下的所有 TXT 文件。 - 遍历文件并处理:
ForEach-Object
会对获取到的每个 TXT 文件进行遍历。 - 读取文件内容:
$content = Get-Content -Path $_.FullName -Raw
使用-Raw
参数一次性读取文件的全部内容。 - 以 UTF - 8 无 BOM 编码写入文件:
[System.IO.File]::WriteAllText($_.FullName, $content, [System.Text.UTF8Encoding]::new($false))
借助[System.Text.UTF8Encoding]::new($false)
创建一个不包含 BOM 的 UTF - 8 编码对象,然后将内容写回文件。
注意事项
- 请确保你有对这些 TXT 文件进行读写操作的权限。
- 在运行脚本之前,最好先备份数据,以防数据丢失或损坏。