Autor Beitrag
lovly
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mi 19.08.09 23:47 
Hallo experten:)
könnt ihr mich bitte helfen bei einem C# Code erlären, ich bin nähmlich Anfänger und ich komme mit diesen Code nicht clar.
Ich brauche diesen Code bitte sehr detaiiert wie es geht, damit ich verstehen kann wie der prozess läuft:(
Welche Klassen und Methoden enthält den Code??und was macht dann jeder klasse und jeder Methode??

C# Code:
ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
using System;
using System.Data;
using System.IO;
using System.Threading;
using System.Data.Odbc;

namespace new
{
    public class CSV
    {
        string sPath;   ????
      
        public CSV(string _sPath)?????
        {
            sPath = _sPath; ?????
        }

        #region CSV1 auslesen ?????
        public DataTable GetTableFromRumCSV()??????????
        {
            StreamReader reader = new StreamReader(sPath);??????????????
            DataTable table = new DataTable();?????????????????
            int i = 0;?????????????
            string[] zeile = new string[12];?????????????????

            #region Columns hinzufügen???????????????????
            for (int C = 0; C < 12; C++)????????????????????
            {
                DataColumn column = table.Columns.Add();?????????????????
            }
            #endregion???????????????

            bool b = true;????????????????

            do????????
            {
                
                string s = reader.ReadLine();??????????????????
                if (s != null)??????????????
                {


                    zeile = s.Split(new string[] { "," }, StringSplitOptions.None);???????????????????
                    DataRow row = table.NewRow();??????????????ßßßßßß

                    table.Rows.Add(row);?????????????????


                    for (int k = 0; k < zeile.Length; k++)??????????????????
                    {
                        table.Rows[i][k] = zeile[k];????????????????????
                    }???????????????????????
                }
                else??????????????????????????
                {
                    b = false;??????????????????
                }

                i++;
            } while (b);



            return table;
        }

        #endregion

        #region CSV2 auslesen                       Einfach alles detaieirt erklären bitte
        public DataTable GetTableFrom2CSV()
        {
            FileInfo fileInfo = new FileInfo(sPath);
            DataTable table = new DataTable();
            string connectionString = String.Format("Driver={{Microsoft Text Driver (*.txt; *.csv)}};Dbq={0};", fileInfo.DirectoryName);
            OdbcConnection connection = new OdbcConnection(connectionString);
            OdbcDataAdapter da = new OdbcDataAdapter(String.Format("select * from [{0}]", fileInfo.Name), connection);
            da.Fill(table);

            return table;
        }
        #endregion
    }
}


Moderiert von user profile iconKlabautermann: cs-Tags eingefügt.
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Do 20.08.09 08:49 
Hallo und :welcome:

Bevor ich mich mit Code beschäftige, erwarte ich, dass er als solcher lesbar ist. Bitte überarbeite deinen Beitrag:
1. Gehe auf den Button mit der Schere, um den ersten Beitrag zu ändern (editieren).
2. Markiere alles, was Code-Auszug ist.
3. Öffne im Kopf den Teil "Bereiche".
4. Wähle in der ersten ComboBox C# aus.
5. Drücke den Plus-Button daneben.
6. Drücke "Absenden" für den geänderten Text.
Danke!

Ob deine Bitte angemessen ist, da habe ich Zweifel. Zumindest die Frage "Welche Klassen und Methoden enthält den Code?" (es heißt übrigens der Code) solltest du dir selbst erklären können. Aber mehr will ich erst prüfen, wenn der Text lesbar ist.

Jürgen
ene
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 779
Erhaltene Danke: 1

Vista, XP, W2K
Delphi, .Net, Deutsch und Englisch
BeitragVerfasst: Do 20.08.09 10:13 
Moin,

ein int i = 0; sollte dir aber schon klar sein?

_________________
Wir, die guten Willens sind, geführt von Ahnungslosen, Versuchen für die Undankbaren das Unmögliche zu vollbringen.
Wir haben soviel mit so wenig so lange versucht, daß wir jetzt qualifiziert sind, fast alles mit Nichts zu bewerkstelligen.
reox
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Mo 14.09.09 22:06 
da ich grad eh nix zu tun hab (mir is fad^^), hab ich mir das mal angeschaut und so ganz schlau werd ich da auch net?! namespace new... da mag man ja nicht mal mehr weiterlesen^^
Jetzt gibts zumindest mal keine Fehler mehr:
ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
using System;
using System.Data;
using System.IO;
using System.Data.Odbc;

public class CSV
{
    // Instanzvariablen
    private string sPath; 

    // Konstruktor
    public CSV(string _sPath)
    {
        sPath = _sPath; 
    }

    public DataTable GetTableFromRumCSV()
    {
        StreamReader reader = new StreamReader(sPath);
        DataTable table = new DataTable();
        int i = 0;
        string[] zeile = new string[12];

        for (int C = 0; C < 12; C++)
        {
          DataColumn column = table.Columns.Add(); // Warum zuweisen? braucht man die noch?
        }

        try
        {
            string s = reader.ReadLine();
            if (s != null)
            {
                zeile = s.Split(',');
                DataRow row = table.NewRow();
                table.Rows.Add(row);
                for (int k = 0; k < zeile.Length; k++)
                    table.Rows[i][k] = zeile[k];
            }
            else
                throw new NullReferenceException();
            i++;
        }
        catch (Exception e)
        {
            Console.WriteLine(e.ToString());
        }
        return table;
    }

    public DataTable GetTableFrom2CSV()
    {
        FileInfo fileInfo = new FileInfo(sPath);
        DataTable table = new DataTable();
        string connectionString = String.Format("Driver={{Microsoft Text Driver (*.txt; *.csv)}};Dbq={0};", fileInfo.DirectoryName);
        OdbcConnection connection = new OdbcConnection(connectionString);
        OdbcDataAdapter da = new OdbcDataAdapter(String.Format("select * from [{0}]", fileInfo.Name), connection);
        da.Fill(table);

        return table;
    }
}