Mono erreur: erreur CS0117: `System.IO.File » ne contient pas une définition pour `readlines

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

  •  27-10-2019
  •  | 
  •  

Question

J'ai suivi ce fil à installer Mono sur ma boîte Fedora:

Installer Mono sur CentOS 5.5 en utilisant YUM

Cependant, quand je tente de compiler mon programme en utilisant:

 gmcs foo.cs

J'obtenir:

  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)

Compilation a échoué: 1 erreur (s), 0 avertissements

La ligne en question est:

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

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

point Quelqu'un peut-moi dans la bonne direction?

Était-ce utile?

La solution

il semble donc que le problème est que vous utilisez le compilateur gmcs, qui est conçu spécifiquement pour cibler le moteur d'exécution .Net 2.0. La liste des compilateurs C # pour la mono est:

  • mcs - .Net 1.1 exécution (dépréciée)
  • gmcs - runtime .Net 2.0
  • - CML .Net 2.1 runtime
  • dmcs - .Net 4.0 runtime

(voir pour plus de détails)

Alors que le compilateur vous devriez utiliser pour le ciblage .Net 4.0 est dmcs. Au lieu de cela, si vous avez réellement l'intention de cibler .Net 2.0, utilisez la méthode File.ReadAllLines que @kil et @minitech parlé.

Autres conseils

Je crois que vous voulez File.ReadAllLines.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top