diff --git a/Program.cs b/Program.cs index ba30395..d027a1e 100644 --- a/Program.cs +++ b/Program.cs @@ -68,11 +68,15 @@ 4. 编解码失败 if (writeToStdout) { // Write to stdout - return File.Exists(args[1]) - ? Helpers.WriteToStdOut(isEncodeMode ? Base16384.EncodeFromFileToStream : Base16384.DecodeFromFileToStream, - new FileInfo(args[1])) - : Helpers.PrintErrorMessage(null, "Source file not found.", 2); + if (args[1].Contains(',')) { + return Helpers.PrintErrorMessage(null, "Source file cannot be a list when writing to stdout.", 2); + } + + if (!File.Exists(args[1])) { + return Helpers.PrintErrorMessage(null, "Source file not found.", 2); + } + return Helpers.WriteToStdOut(isEncodeMode ? Base16384.EncodeFromFileToStream : Base16384.DecodeFromFileToStream, new FileInfo(args[1])); } diff --git a/README.md b/README.md index 2132cc4..3e499c2 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ Base16384.Net <"e" | "d"> [out | "-"] - 输入为标准输入时,结果输出到标准输出 - 输入为文件时,结果写入 `源文件名.encoded` 或 `源文件名.decoded` - 输入为文件夹或逗号分隔的文件列表时,结果写入到 `encoded` 或 `decoded` 文件夹内相应结构的文件内 - - `-` 表示输出到标准输出,输入为文件夹时无效 + - `-` 表示输出到标准输出,输入为文件夹或逗号分隔的文件列表时无效 - 其他 - 输入为文件时,输出到指定文件 - 输入为文件夹或逗号分隔的文件列表时,输出到指定文件夹