【问题标题】:How to remove \0 from the array of strings如何从字符串数组中删除 \0
【发布时间】:2014-10-16 15:59:16
【问题描述】:

我有一个 sql 脚本,在从 unicode 1200 转换为 unicode 65001 之后,我在我的 .sql 文件中添加了字符和空格 \0 值之后。我正在尝试使用 Trim 方法,但它不起作用。

我现在拥有的:

string path = @"D:\test.sql";
if (File.Exists(path))
{
    var header = File.ReadAllLines(path);
    //var readText = header.Trim(new Char[] {' ', '*', '.'});
    foreach (string s in header)
    {
        Console.WriteLine(s.Trim(new Char[] { ' ' }));
    }
    Console.ReadKey();
}

在我的标题中,我有一个字符串数组,例如:

U\0S\0E\0 \0[\0m\0a\0s\0t\0e\0r\0]\0

我试图删除 \0,但这对我没有帮助。

有人知道我该怎么做吗?

【问题讨论】:

  • 你熟悉Replace()函数吗..听起来你需要它而不是Char..还要阅读char和string之间的区别

标签: c# sql unicode trim


【解决方案1】:

您说您想删除 \0,但您正在尝试删除前导和尾随空格、点和星号。到目前为止,\0 什么都没有。如果您只想从所有行中删除\0,那么您可以使用string.Replace 方法将每次出现的\0 替换为一个空字符串,并且您可以使用LINQ 轻松地将其应用于所有行:

var header = File.ReadLines(path).Select(line => line.Replace("\0","")).ToArray();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 2013-10-17
    • 2022-11-12
    • 1970-01-01
    • 2020-09-04
    • 2017-12-24
    • 1970-01-01
    相关资源
    最近更新 更多