Mono -Fehler: Fehler CS0117: "System.io.file" enthält keine Definition für "Leadlines"

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

  •  27-10-2019
  •  | 
  •  

Frage

Ich folgte diesem Thread, um Mono in meiner Fedora -Box zu installieren:

Installieren Sie Mono auf CentOS 5.5 mit Yum

Wenn ich jedoch versuche, mein Programm mit: zusammenzustellen:

 gmcs foo.cs

Ich bekomme:

  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)

Kompilierung fehlgeschlagen: 1 Fehler (en), 0 Warnungen

Die fragliche Zeile lautet:

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

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

Kann mir jemand in die richtige Richtung verweisen?

War es hilfreich?

Lösung

Es sieht also so aus, als wäre das Problem, dass Sie die verwenden gmcs Compiler, der speziell für die Targeting der .NET 2.0 -Laufzeit entwickelt wurde. Die Liste der C# Compiler für Mono lautet:

  • MCS - .NET 1.1 Laufzeit (veraltet)
  • GMCS - .NET 2.0 Laufzeit
  • SMCS - .NET 2.1 Laufzeit
  • DMCS - .NET 4.0 Laufzeit

(sehen hier für mehr Details)

Der Compiler, den Sie für die Targeting von .net 4.0 verwenden sollten, ist also dmcs. Wenn Sie stattdessen tatsächlich beabsichtigt haben, .NET 2.0 zu zielen, verwenden Sie die File.ReadAllLines Methode, über die @kil und @minitech gesprochen haben.

Andere Tipps

Ich glaube du willst File.ReadAlleLines.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top