Einen String in ein Array schreiben [gelöst]



  • Hi Community,

    ich übergebe einer Funktion einen Text (String) und möchten diesen
    an eine bestimmte Stelle eines Arrays schreiben.

    Code Auszug:

    void WriteErrorText(String ErrorText)
                {
                   if(etIndex < 1000)
                   {
                       ErrorText[etIndex] = ErrorText;
                       etIndex++;
                   }
                }
    

    Nun spuckt der Compiler folgende Fehler aus:

    Fehler 1 Einer Eigenschaft oder einem Indexer "string.this[int]" kann nichts zugewiesen werden -- sie sind schreibgeschützt. C:\Dokumente und Einstellungen\****\Eigene Dateien\Visual Studio 2008\Projects\MDManager\MDManager\ErrorLog.cs 24 20 MDManager

    und

    Fehler 2 Eine implizite Konvertierung vom Typ "string" in "char" ist nicht möglich. C:\Dokumente und Einstellungen\****\Eigene Dateien\Visual Studio 2008\Projects\MDManager\MDManager\ErrorLog.cs 24 41 MDManager

    Was mache ich falsch und wo liegt das Problem. Ich hoffe ihr könnt mir helfen.

    Gruß!



  • Aaaaalso...
    Ein String ist ein Array von Chars.
    Handelt es sich bei ErrorText[] um eine Membervariable?
    Wenn ja, dann mach das mit

    this.ErrorText[etIndex] = ErrorText;
    

    So weist du an, dass auch wirklich der ErrorText des Objekts genommen wird.
    Was du jetzt machst:
    Du versuchst, einen String in eine Char-Variable zu quetschen.
    Zudem tust du das mit demselben String.



  • Hi,

    hab just in diesem Moment den Fehler gefunden.
    Wie du schon richtig bemerkt hast Asmodiel hab ich die Variable
    die als Parameter übergeben wird genauso bennant wie das Array.
    Nach dem ich es umbennant habe geht es natürlich.

    Hier der Code wie es eigentlich hätte sein sollen:

    void WriteErrorText(string Text) // ErrorText -> Text
                {
                   if(etIndex < 1000)
                   {
                       ErrorText[etIndex] = Text;
                       etIndex++;
                   }
                }
    

    Vielen Dank Asmodiel für deine rasche Antwort.

    Gruß!


Anmelden zum Antworten