以下C#代码:
using System;
namespace TrimTest {
class Program {
static void Main(string[] args) {
Console.WriteLine(Environment.CommandLine);
Console.WriteLine(Environment.CommandLine.Trim('"'));
Console.ReadKey(false);
}
}
}
Run Code Online (Sandbox Code Playgroud)
产生以下输出:
"D:\Projects\TrimTest\TrimTest\bin\Debug\TrimTest.vshost.exe"
D:\Projects\TrimTest\TrimTest\bin\Debug\TrimTest.vshost.exe"
Run Code Online (Sandbox Code Playgroud)
除非我误读了文档:
从trimChars参数中所有出现的字符后保留的字符串将从当前String对象的开头和结尾删除.如果trimChars为null或为空数组,则会删除空格字符.
不应该从该输出中的第二个字符串中修剪尾部双引号?
看起来您可能会遇到最后一个双引号后面有尾随空格的情况。
尝试:
Console.WriteLine(Environment.CommandLine.Trim().Trim('"'));
Run Code Online (Sandbox Code Playgroud)
看看会发生什么。
您还可以将参数数组中的额外字符传递给您已经使用的重载:
Console.WriteLine(Environment.CommandLine.Trim('"', ' '));
Run Code Online (Sandbox Code Playgroud)
但由于我不知道存在哪种空白,因此我更喜欢使用删除所有空白的重载,而不是猜测那里有哪个字符。
| 归档时间: |
|
| 查看次数: |
1059 次 |
| 最近记录: |