5

私がやろうとしているのは、float入力が数値であるかどうかを確認することです。IsNumeric()メソッドを使用してそうするように求められています。問題は、MonoDevelopを使用しているのに、なぜこれが機能しないのか理解できないことです。必要なアセンブリ参照を追加したようです。

だからゼロから。どうすればよいですか?VBアセンブリ参照に何かを追加する必要がありますか?そして、私がVisualStudioで学校で仕事をしようとしたときに、それがまだ機能する場合はどうなりますか?

static void getBookInfo(Book book)
{
        Console.Write("Enter Book Title: ");
        book.Title = Console.ReadLine();
        Console.Write("Enter Author's First Name: ");
        book.AuthorFirstName = Console.ReadLine();
        Console.Write("Enter Author's Last Name: ");
        book.AuthorLastName = Console.ReadLine();
        Console.Write("Enter Book Price: $");
        book.Price = float.Parse(Console.ReadLine());
}

VBを含む参照ファイルは次のようになります。

public class VBCodeProvider : CodeDomProvider
{
    // Constructors
    public VBCodeProvider ();
    public VBCodeProvider (IDictionary<string, string> providerOptions);

    // Methods
    public virtual ICodeCompiler CreateCompiler ();
    public virtual ICodeGenerator CreateGenerator ();
    public virtual TypeConverter GetConverter (Type type);
    public virtual void GenerateCodeFromMember (CodeTypeMember member, TextWriter writer, CodeGeneratorOptions options);

    // Properties
    public virtual string FileExtension { get; }
    public virtual LanguageOptions LanguageOptions { get; }
}

よろしく。そして助けてくれてありがとう。

いくつかのより多くの情報。私のページの上に私は持っています:

using Microsoft.VisualBasic;

IsNumeric()メソッドを入力しようとすると、リストされません(通常はリストされます)。

別の編集。だから私はこれをこのように行うことができました(しかし私はIsNumericメソッドを使用する必要があるので宿題からポイントを失うことはありません):

static void getBookInfo(Book book)
{
    bool isNumeric;
    float number;
    string numberInput;

    Console.Write("Enter Book Title: ");
        book.Title = Console.ReadLine();
        Console.Write("Enter Author's First Name: ");
        book.AuthorFirstName = Console.ReadLine();
        Console.Write("Enter Author's Last Name: ");
        book.AuthorLastName = Console.ReadLine();
        Console.Write("Enter Book Price: $");
        numberInput = Console.ReadLine();

    isNumeric = float.TryParse(numberInput, out number);

    if (isNumeric)
        Console.WriteLine(number.ToString());
    else
        Console.WriteLine("not number");
}
4

2 に答える 2

1

これは、「Microsoft.VisualBasic.Information」クラスの静的メソッドです。それでも、using次のようにアクセスする必要があります

Information.IsNumeric (someString)

http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.information.isnumeric.aspxを参照してください

于 2011-10-04T02:26:45.160 に答える
1

Visual Basicアセンブリへのリンクを試みるのが面倒な場合は、decimal.TryParse()メソッドが適切に類似した機能を実行しますが、いくつかの欠点があります。

その使用例は、http://msdn.microsoft.com/en-us/library/9zbda557.aspxにあります。

于 2012-02-06T03:23:18.813 に答える