Texteditor, der auch große Dateien öffnet



  • Hallo,

    ich habe eine 78 MB große .txt Datei, in der viele Ganzzahlen stehen. Ca, 7,5 mio Zeilen.

    Das ist für unsern Freund den Editor (notepad.exe) unter Windows nur leider viel zu groß
    Beim Laden stürzt dieser ab

    Da dacht ich mir, programmierste dir doch selbst einen, bzw. lässte das den MFC-Anwendungsassistenten machen.

    Da gibts aber n paar Schwierigkeiten (btw. ich benutzte das Microsoft Visual Studio 2008 Professional)

    Ich erstelle ein "Einfaches Dokument" und benutze die Basisklasse CEditView.
    Wenn ich das Programm ausführe und probiere die 78 MB Datei zu laden bringt dieses Programm (immerhin!) eine Fehlermeldung von wegen "Datei ist zu groß".

    Wie kann ich das am einfachsten umgehen?

    mfg
    Yoda2003



  • google mal nach MultiEdit



  • notepad benutzt selbst das edit control von windows, es bringt also nichts das genauso zu machen



  • @Yoda2003 : Nur so aus Neugierde: Was möchtest du denn an diesen 78 MB Daten editieren?





  • Hallo,

    erst mal vielen Dank für die zahlreiche Hilfe.
    Es geht mir aber nicht darum, einfach nur die Datei anzuzeigen, sondern ich möchte dies mit der Marke Eigenbau hinbekommen, ohne auf Fremdprodukte zurückgreifen zu müssen.

    Darum bin ich für programmiererische Hilfe sehr dankbar 🙂

    mfg
    Yoda2003


  • Mod

    Das CEditView benutzt genauso wie Notepad ein Standard Edit Control!

    Wenn Du das umgehen willst musst Du wirklich alles selber machen.
    Es gibt auch auf Sourceforge einige Editoren. z.B. Notepad++



  • > sondern ich möchte dies mit der Marke Eigenbau hinbekommen, ohne auf Fremdprodukte zurückgreifen zu müssen.
    Naja, was gibts da gross zu sagen. Entweder du nimmst ein fertiges Edit-Control wie das von Windows oder das Scintilla (http://www.scintilla.org/), oder du schreibst dir selbst ein Edit-Control (was halt *viel* Aufwand ist).

    BTW: 80MB schafft Notepad soweit ich mich erinnere schon noch (auf meinem PC, d.h. mit 2GB RAM), aber braucht halt *ewig* zum laden.

    Und... bei Scintilla ist bei 500-1000MB schluss, und das mit einem schönen Absturz statt Fehlermeldung! Dafür geht's bis dahin relativ schnell, also nen 200MB Textfile laden dauert vielleicht 2-3 Sekunden (vorausgesetzt die Platte ist schnell genug, bzw. das File schon im Cache).



  • Hallo,

    also bei mir öffnet Notepad das definitiv nicht.
    Und Scientilla macht dies fast in echtzeit (bei 4 gb ram).

    Hab schon probiert, Scientilla als Vorlage zu nehmen, nur gabs atm noch sehr viele Probleme, da es anscheind nicht für das Visual Studio 2008 geschrieben worden ist....
    Naja...muss wohl doch n bissl mehr Arbeit investieren. Schade..

    Trotzdem Danke für eure Hilfe 🙂



  • Ist ja nicht schwierig das zu machen.

    Definiere wieviel Zeilen du anzeigen möchtest.
    Du ließt die Datei Zeileweise ein und zeigst die Zeilen an.
    Eine Scrollbar reagiert auf ein Event.
    Dan eben nächste Zeile und oben hinausschieben.
    Ist in einer Stunde fertig.



  • Yoda2003 schrieb:

    Hab schon probiert, Scientilla als Vorlage zu nehmen, nur gabs atm noch sehr viele Probleme, da es anscheind nicht für das Visual Studio 2008 geschrieben worden ist....
    Naja...muss wohl doch n bissl mehr Arbeit investieren. Schade..

    Ich verwende ebenfalls Scintilla und hatte mit VS 2008 noch keine Probleme.



  • Unix-Tom schrieb:

    Ist ja nicht schwierig das zu machen.

    Definiere wieviel Zeilen du anzeigen möchtest.
    Du ließt die Datei Zeileweise ein und zeigst die Zeilen an.
    Eine Scrollbar reagiert auf ein Event.
    Dan eben nächste Zeile und oben hinausschieben.
    Ist in einer Stunde fertig.

    Wenn man Unicode inklusive BiDi und Complex Scripts unterstützen möchte denke ich wird man *wesentlich* mehr als eine Stunde brauchen. Ganz besonders wenn man die nötigen APIs nocht nicht gut kennt.


Log in to reply