Mono Error: Error CS0117: `System.io.file 'не содержит определения для« чтения »

StackOverflow https://stackoverflow.com/questions/8372501

  •  27-10-2019
  •  | 
  •  

Вопрос

Я последовал за этой темой, чтобы установить моно на мою коробку с федорой:

Установите Mono на CentOS 5.5, используя YUM

Однако, когда я пытаюсь скомпилировать свою программу, используя:

 gmcs foo.cs

Я получил:

  foo.cs(11,44): error CS0117: `System.IO.File' does not contain a definition for `ReadLines'
/opt/novell/mono/lib/mono/2.0/mscorlib.dll (Location of the symbol related to previous error)

Компиляция не удалась: 1 Ошибка, 0 Предупреждения

Рассматриваемая линия:

 using System;
 using System.Collections.Generic;
 using System.IO;
 using System.Linq;

 foreach(int currentMax in File.ReadLines(args[0]).Select(int.Parse)) 
 {
     ...
 }

Может кто-то указать мне верное направление?

Это было полезно?

Решение

Похоже, проблема в том, что вы используете gmcs Компилятор, который предназначен специально для нацеливания времени выполнения .NET 2.0. Список компиляторов C# для Mono:

  • MCS - .NET 1.1 Средство выполнения (устарело)
  • GMCS - .net 2.0.
  • SMCS - .net 2.1.
  • DMCS - .net 4.0.

(видеть здесь Больше подробностей)

Таким образом, компилятор, который вы должны использовать для таргетинга .NET 4.0 dmcs. Анкет Вместо этого, если вы на самом деле намеревались нацелиться на .net 2.0, то используйте File.ReadAllLines Метод, о котором говорили @kil и @minitech.

Другие советы

Я считаю, что ты хочешь File.ReadВсеLines.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top