Как добавить массив Int к файлу по горизонтали? - PullRequest
1 голос
/ 26 мая 2020

Я пытаюсь писать в файл по горизонтали, лучшее, что я могу сделать, это записать их в файл по вертикали.

Итак, вместо печати в файл

1
2

Они печатают в файл

1 2

Код

int[] test3 = new int[2];

        Random randNum3 = new Random();
        for (int i = 0; i < test3.Length; i++)
        {
            test3 = Enumerable.Range(1, 11).OrderBy(x => randNum3.NextDouble()).Take(2).ToArray();
        }

        int[] b = test3;
        int u;

        for (int i = 0; i < b.Length; i++)
        {
           // Console.Write("  " + b[i]  + " ");
        }
        for (int j = 0; j <= b.Length - 2; j++)
        {
            for (int i = 0; i <= b.Length - 2; i++)
            {
                if (b[i] > b[i + 1])
                {
                    u = b[i + 1];
                    b[i + 1] = b[i];
                    b[i] = u;
                }
            }
        }

        System.IO.File.AppendAllLines("C:\\Users\\Gandalf\\Desktop\\log.txt", b.Select(i => i.ToString()).ToArray());

Ответы [ 2 ]

1 голос
/ 26 мая 2020

Хорошо, это добавит текст «по горизонтали», вместо использования AppendAllLines, нам нужно использовать AppendAllText, а IEnumerable следует преобразовать в string

int[] test3 = new int[11];

Random randNum3 = new Random();
for (int i = 0; i < test3.Length; i++)
{
  test3 = Enumerable.Range(1, 11).OrderBy(x => 
    randNum3.NextDouble()).Take(2).ToArray();
}

int[] b = test3;
int u;

for (int i = 0; i < b.Length; i++)
{
  // Console.Write("  " + b[i]  + " ");
}
for (int j = 0; j <= b.Length - 2; j++)
{
  for (int i = 0; i <= b.Length - 2; i++)
  {
    if (b[i] > b[i + 1])
    {
      u = b[i + 1];
      b[i + 1] = b[i];
      b[i] = u;
    }
  }
}

var write = $" {String.Join(" ", b.Select(x => x.ToString()))}";
File.AppendAllText("lines.txt", write);

0 голосов
/ 26 мая 2020

Вам нужно вставить новую строку между каждым значением. Итак,

Итак, используйте это для преобразования массива в строку:

String.Join(Environment.NewLine, a);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...