char Probleme



  • Also hab noch nicht registriert aber mach ich gleich

    void CAcs::OnBproof()
    {
    //m_strPfad=m_dOGS->m_strPfad;
    Verzeichnis();
    CFile dateiLesen( strPath+"\\alias.cfg", CFile::modeRead );
    long int laenge = dateiLesen.GetLength();
    TCHAR str[10000];
    dateiLesen.Read( str, sizeof( str ) );
    dateiLesen.Close();
    m_strText = str;

    int m = m_strText.Replace("12345", m_strZufallszahl);
    int s = m_strText.Replace("Ì", ""); /* <------ Hier liegt mein Fehler es geht einfach nicht das ich den char frei lasse das Ì zeichen soll jedoch vollständig entfernt werden*/

    //Datei Speichern!
    TCHAR strSchreiben[10000];
    UpdateData( TRUE );
    _tcscpy( strSchreiben, m_strText );
    CFile datei( m_strPfad+"\\demo.cfg", CFile::modeCreate | CFile::modeWrite );
    datei.Write( strSchreiben, sizeof( strSchreiben ) );
    datei.Close();

    //COGSv1ConfiguratorView::m_strPfad
    ///////////////////
    //UpdateData(false);
    }

    Wie schon obern beschrieben oder gibt es eine möglichkeit das Ì von anfang an nicht in den tchar str reinzubringen alle was unter den 10000 Zeichen ist ist ein Ì Zeichen.

    Bitte helft mir!!! Sonst werden die Datein zu gross wenn ich was andere nehm 😞



  • oder gibt es eine Möglichkeit die Buchstaben der .cfg durchzuzählen und so dann den TCHAR[Buchstabendercfg] machen ?



  • Probiers mal so:
    TCHAR str[10000];
    dateiLesen.Read( str, 9999);



  • Original erstellt von <DaRpH>:
    **Also hab noch nicht registriert aber mach ich gleich

    void CAcs::OnBproof()
    {
    //m_strPfad=m_dOGS->m_strPfad;
    Verzeichnis();
    CFile dateiLesen( strPath+"\\alias.cfg", CFile::modeRead );
    long int laenge = dateiLesen.GetLength();
    TCHAR str[10000];**

    UINT anz= dateiLesen.Read( str, sizeof( str ) );
    str[anz]= 0; //gelesenes terminieren 😉

    ...

    [ Dieser Beitrag wurde am 09.09.2002 um 08:17 Uhr von toosten editiert. ]



  • TCHAR str[10000]; //<--------

    Nur da liegt das Problem das von toosten hat komischerweise auch nicht geholfen
    sobald ich auch nur irgendwas anderes einsetze als Constanten kommt:
    C:\Programme\Microsoft Visual Studio\MyProjects\OGS v1 Configurator\Acs.cpp(90) : error C2057: expected constant expression
    C:\Programme\Microsoft Visual Studio\MyProjects\OGS v1 Configurator\Acs.cpp(90) : error C2466: cannot allocate an array of constant size 0
    C:\Programme\Microsoft Visual Studio\MyProjects\OGS v1 Configurator\Acs.cpp(90) : error C2086: 'str' : redefinition
    C:\Programme\Microsoft Visual Studio\MyProjects\OGS v1 Configurator\Acs.cpp(90) : error C2440: 'initializing' : cannot convert from 'const int' to 'char []'

    ich hab auch schon andere Sachen Probiert es kommt aber immer mehr oder weniger aufs gleiche Raus.
    Ich will nur eine String ohne diese komische i am ende Abspeichern und vorher noch was Ersetzen gibts vieleicht noch eine Andere möglichkeit??



  • Gibt es jemanden der mir bitte bitte helfen kann. Es muss doch möglich sein ein String ohne Probleme in eine Datei zu speichern.



  • //Datei Einlesen:
    CFile File;
    int nLaenge=0;
    char cZeichen;
    CString strDaten;
    
    nLaenge=FileGetLength();
    File.Seek(0,CFile::begin);
    for (int i=0; i<nLaenge;i++)
    {
       File.Read(cZeichen,1);
       strDaten+=cZeichen;
    }
    
    //Schreiben:
    File.Write(strDaten, strDaten.GetLength());
    


  • ne geht auch nicht
    Werd das Wohl Akzeptieren müssen.
    Ich Arbeite grad mit jemanden dran das wenigstens ein Bissl Variable zu machen geht aber nur mit IF Bediengung Falls es euch überhaupt interessiert.


Log in to reply