4

我需要创建一个 10 个字符的字符串。如果字符串少于 10 个字符,我需要附加空格,直到完成整个 10 个字符的字符串。我做了以下但我没有成功,结果字符串最后只有一个空格连接:

public void MyMethod(string[] mystrings)
{

    mystring[i].PadRight(10- mystrings[i].length)
    // Here I need a 10 char string. For example:
    // "1234567   "

}

谢谢你。

4

7 回答 7

9

你可以使用String.PadRight

mystring = mystring.PadRight(10, ' ');

(您可以省略第二个参数,就像您在使用空格时一样)。

但是请注意,如果mystring已经超过 10 个字符,它将保持更长的时间。从您的问题中不清楚,如果您需要一个长度正好为 10 个字符的字符串。如果是这样,请执行以下操作:

mystring = mystring.PadRight(10).Substring(0, 10);
于 2013-06-10T11:34:47.150 回答
1

您可以使用string.Format自定义格式字符串:

mystring = string.Format("{0,-10}", mystring);
于 2013-06-10T11:34:51.880 回答
1

您需要使用以下string.PadRight方法:

string result = mystring.PadRight(10);
于 2013-06-10T11:36:00.137 回答
0

尝试这个

  string str = "cc";

        int charstoinsert = 10 - str.Length;
        for (int i = 0; i < charstoinsert; i++)
        {
            str += " ";
        }
于 2013-06-10T11:35:53.760 回答
0

尝试以下功能

#region GetPaddedString

        private string GetPaddedString(string strValue, int intLength)
        {
            string strReturn = string.Empty;

            string _strEmptySpace = " ";

            int _vinLength = strValue.Length;

            if (_vinLength < intLength)
            {
                strReturn = strValue + _strEmptySpace.PadRight((intLength - _vinLength));
            }
            else
            {
                strReturn = strValue;
            }

            return strReturn;

        }

        #endregion

GetPaddedString("test", 10)
于 2013-06-10T11:38:27.253 回答
0

这应该可以解决问题:

str.PadRight(10, ' ').Substring(0, 10)
于 2013-06-10T11:38:47.530 回答
0

尝试这个

string mystring= "sd";
        while (mystring.Length <= 10)
        {
            mystring+= " ";
        }
于 2013-06-10T11:44:54.210 回答