Class שיורש מ-StreamReader

פורום רשתות, IT ומחשוב כללי - רשתות, ראוטרים, מחשבים ניידים, אביזרים וכו'.
שלח תגובה
gshhar פותח השרשור
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 655
הצטרף: מאי 2007
נתן תודות: 0
קיבל תודות: 3 פעמים

שליחה #1 

בשפת C#

יש לי תרגיל שבו אני אמור לרשום Class שיורש מ-StreamReader עלמנת לקרוא כל פעם תו בודד, התחלתי לרשום אותו אבל אני מקבל שגיאת identifier expected לפני ה-path הראשון (ממש אחרי ה-char הראשון):

[/code]

קוד: בחירת הכל

    public class BabyStreamReader : StreamReader
    {
        public BabyStreamReader(char (@"D:\C#\ConsoleApplication1\Classes\T380\bin\Debug\File.txt"))
            : base (@"D:\C#\ConsoleApplication1\Classes\T380\bin\Debug\File.txt")
        {


        }


        public int ReadNextInt(char a)
        {
            
            
            return 1;
        }
    }

nondos
חבר פעיל מאוד
חבר פעיל מאוד
תגובות: 207
הצטרף: פברואר 2005
שם מלא: nondos
נתן תודות: 11 פעמים
קיבל תודות: 4 פעמים

שליחה #2 

ההגדרה של ה class בסדר וגם הירושה

בקונסטרקוטור אתה דוחף מחרוזת במקום ארגומנט וזה לא חוקי
תנסה את הקוד הבא
ובקריאה לקונסטרקטור תדחוף את המחרוזת

קוד: בחירת הכל


        public BabyStreamReader(string path)) 
            : base (path) 

gshhar פותח השרשור
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 655
הצטרף: מאי 2007
נתן תודות: 0
קיבל תודות: 3 פעמים

שליחה #3 

אוקיי תודה רבה, כרגע הבעיה שלי היא שבכל איטרציה של המתודה היא תמיד תגיע בסוף ותחזיר -9999 וככה היא תצא ובעצם לא תסיים לקרוא את כל הקובץ ואני לא מצליח לתקן את זה

[/code]

קוד: בחירת הכל

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


namespace T380
{
    public class BabyStreamReader : StreamReader
    {
        public BabyStreamReader(string path)
            : base(path)
        {


        }


        public int ReadNextInt()
        {
            int INum = 0;
            string StNum = "";
            ArrayList Numbers = new ArrayList();
            BabyStreamReader InputFile = new BabyStreamReader("TextFile.txt");


                char character = (char)InputFile.Read();


                if &#40;character >= '0' && character <= '9'&#41;
                &#123;
                    StNum += character;
                &#125;
                else
                &#123;
                    INum = int.Parse&#40;StNum&#41;;
                    StNum = "";
                    Numbers.Add&#40;INum&#41;;


                    foreach &#40;int i in Numbers&#41;
                    &#123;
                        return i;
                    &#125;
                &#125;


                return -9999;
        &#125;        
    &#125;


    class Program
    &#123;
        static void Main&#40;string&#91;&#93; args&#41;
        &#123;
            BabyStreamReader InputFile = new BabyStreamReader&#40;"TextFile.txt"&#41;;
            
            while &#40;!InputFile.EndOfStream&#41;
            &#123;
                int result = InputFile.ReadNextInt&#40;&#41;;
                Console.WriteLine&#40;result&#41;;


            &#125;
          
            Console.ReadLine&#40;&#41;;
        &#125;
    &#125;
&#125;
אגב, במתודה יכול להיות שהשורה BabyStreamReader InputFile = new BabyStreamReader("TextFile.txt");
מיותרת ובמקום char Character = (char)InputFile.Read(); הייתי צריך לרשום This.Read ?

שלח תגובה

חזור אל “רשתות, אינטרנט ו- Fiber”