<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Korruptes Lesen aus der Datei]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich versuche mittels build-events die resource-files von Visual Studio zur Aktualsierung der Build-Nummern zu ändern.</p>
<p>Hierfür lese ich die ressource-File ein, ändere die benötigten Zeilen und schreibe es in die Datei zurück. Allerdings werden beim Zurückschreiben seltsame Zeichen in die Datei eingefügt und ich kann mir nicht erklären woran das liegen könnte. Zu Demonstrationszwecken (für das Forum) schreibe ich die gelesenen Daten in die Datei zurück ohne etwas geändert zu haben, wobei die Effekte dieselben sind. Weiß irgendjemadn woran das liegen könnte und wie man es beheben kann?</p>
<p>Hiermit lese ich die Datei ein (mFileContent ist ein vector aus strings):</p>
<pre><code>mFile.open(mParams.tFilename.c_str(), std::fstream::in);

        if (!mFile.is_open())
        {
                cerr &lt;&lt; &quot;ReadFile:Cannot open file!\n&quot;;
                return false;
        }

        string line = &quot;&quot;; 
        mFileContent.clear();
        while (getline(mFile, line))
        {
                mFileContent.push_back(line);
        }
</code></pre>
<p>und hiermit schreibe ich es zurück in die Datei zurück:</p>
<pre><code>mFile.open(mParams.tFilename.c_str(), std::fstream::out  std::fstream::trunc);
  std::ostream_iterator&lt;std::string&gt; output_iterator(mFile, &quot;\n&quot;);
            std::copy(mFileContent.begin(), mFileContent.end(), output_iterator);
</code></pre>
<p>Der originale Inhalt (Teilausschnitt):</p>
<pre><code>&gt;     // Microsoft Visual C++ generated resource script.
&gt;     //
&gt;     #include &quot;resource2.h&quot;
&gt;      
&gt;     #define APSTUDIO_READONLY_SYMBOLS
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     //
&gt;     // Generated from the TEXTINCLUDE 2 resource.
&gt;     //
&gt;     #include &quot;winres.h&quot;
&gt;      
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     #undef APSTUDIO_READONLY_SYMBOLS
&gt;      
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     // German (Austria) resources
&gt;      
&gt;     #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEA)
&gt;     LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_AUSTRIAN
&gt;      
&gt;     #ifdef APSTUDIO_INVOKED
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     //
&gt;     // TEXTINCLUDE
&gt;     //
</code></pre>
<p>Der zurückgeschribene Inhalt:</p>
<pre><code>// Microsoft Visual C++ generated resource script.
    ਍⼀⼀ഀഀ
    #include &quot;resource2.h&quot;
    ਍ഀഀ
    #define APSTUDIO_READONLY_SYMBOLS
    ਍⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀ഀഀ
    //
    ਍⼀⼀ 䜀攀渀攀爀愀琀攀搀 昀爀漀洀 琀栀攀 吀䔀堀吀䤀一䌀䰀唀䐀䔀 ㈀ 爀攀猀漀甀爀挀攀⸀ഀഀ
    //
    ਍⌀椀渀挀氀甀搀攀 ∀眀椀渀爀攀猀⸀栀∀ഀഀ

    ਍⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀ഀഀ
    #undef APSTUDIO_READONLY_SYMBOLS
    ਍ഀഀ
    /////////////////////////////////////////////////////////////////////////////
    ਍⼀⼀ 䜀攀爀洀愀渀 ⠀䄀甀猀琀爀椀愀⤀ 爀攀猀漀甀爀挀攀猀ഀഀ
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/335144/korruptes-lesen-aus-der-datei</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 21:02:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/335144.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 02 Nov 2015 10:01:46 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Korruptes Lesen aus der Datei on Mon, 02 Nov 2015 10:02:24 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Ich versuche mittels build-events die resource-files von Visual Studio zur Aktualsierung der Build-Nummern zu ändern.</p>
<p>Hierfür lese ich die ressource-File ein, ändere die benötigten Zeilen und schreibe es in die Datei zurück. Allerdings werden beim Zurückschreiben seltsame Zeichen in die Datei eingefügt und ich kann mir nicht erklären woran das liegen könnte. Zu Demonstrationszwecken (für das Forum) schreibe ich die gelesenen Daten in die Datei zurück ohne etwas geändert zu haben, wobei die Effekte dieselben sind. Weiß irgendjemadn woran das liegen könnte und wie man es beheben kann?</p>
<p>Hiermit lese ich die Datei ein (mFileContent ist ein vector aus strings):</p>
<pre><code>mFile.open(mParams.tFilename.c_str(), std::fstream::in);

        if (!mFile.is_open())
        {
                cerr &lt;&lt; &quot;ReadFile:Cannot open file!\n&quot;;
                return false;
        }

        string line = &quot;&quot;; 
        mFileContent.clear();
        while (getline(mFile, line))
        {
                mFileContent.push_back(line);
        }
</code></pre>
<p>und hiermit schreibe ich es zurück in die Datei zurück:</p>
<pre><code>mFile.open(mParams.tFilename.c_str(), std::fstream::out  std::fstream::trunc);
  std::ostream_iterator&lt;std::string&gt; output_iterator(mFile, &quot;\n&quot;);
            std::copy(mFileContent.begin(), mFileContent.end(), output_iterator);
</code></pre>
<p>Der originale Inhalt (Teilausschnitt):</p>
<pre><code>&gt;     // Microsoft Visual C++ generated resource script.
&gt;     //
&gt;     #include &quot;resource2.h&quot;
&gt;      
&gt;     #define APSTUDIO_READONLY_SYMBOLS
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     //
&gt;     // Generated from the TEXTINCLUDE 2 resource.
&gt;     //
&gt;     #include &quot;winres.h&quot;
&gt;      
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     #undef APSTUDIO_READONLY_SYMBOLS
&gt;      
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     // German (Austria) resources
&gt;      
&gt;     #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEA)
&gt;     LANGUAGE LANG_GERMAN, SUBLANG_GERMAN_AUSTRIAN
&gt;      
&gt;     #ifdef APSTUDIO_INVOKED
&gt;     /////////////////////////////////////////////////////////////////////////////
&gt;     //
&gt;     // TEXTINCLUDE
&gt;     //
</code></pre>
<p>Der zurückgeschribene Inhalt:</p>
<pre><code>// Microsoft Visual C++ generated resource script.
    ਍⼀⼀ഀഀ
    #include &quot;resource2.h&quot;
    ਍ഀഀ
    #define APSTUDIO_READONLY_SYMBOLS
    ਍⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀ഀഀ
    //
    ਍⼀⼀ 䜀攀渀攀爀愀琀攀搀 昀爀漀洀 琀栀攀 吀䔀堀吀䤀一䌀䰀唀䐀䔀 ㈀ 爀攀猀漀甀爀挀攀⸀ഀഀ
    //
    ਍⌀椀渀挀氀甀搀攀 ∀眀椀渀爀攀猀⸀栀∀ഀഀ

    ਍⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀⼀ഀഀ
    #undef APSTUDIO_READONLY_SYMBOLS
    ਍ഀഀ
    /////////////////////////////////////////////////////////////////////////////
    ਍⼀⼀ 䜀攀爀洀愀渀 ⠀䄀甀猀琀爀椀愀⤀ 爀攀猀漀甀爀挀攀猀ഀഀ
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2473790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2473790</guid><dc:creator><![CDATA[ACnut]]></dc:creator><pubDate>Mon, 02 Nov 2015 10:02:24 GMT</pubDate></item><item><title><![CDATA[Reply to Korruptes Lesen aus der Datei on Mon, 02 Nov 2015 10:19:33 GMT]]></title><description><![CDATA[<p>Vlt war die Datei utf8/16 etc codiert und du schreibst die BOM wieder mit rein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2473791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2473791</guid><dc:creator><![CDATA[Techel]]></dc:creator><pubDate>Mon, 02 Nov 2015 10:19:33 GMT</pubDate></item><item><title><![CDATA[Reply to Korruptes Lesen aus der Datei on Mon, 02 Nov 2015 10:28:37 GMT]]></title><description><![CDATA[<p>Das kann sein, aber muss die Codierung nicht beibehalten werden? Wie msus ich da jetzt genau vorgehen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2473792</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2473792</guid><dc:creator><![CDATA[ACnut]]></dc:creator><pubDate>Mon, 02 Nov 2015 10:28:37 GMT</pubDate></item><item><title><![CDATA[Reply to Korruptes Lesen aus der Datei on Fri, 06 Nov 2015 07:34:42 GMT]]></title><description><![CDATA[<p>es war tatsächlich utf16 codiert. Habe versucht die BOM zu überpsringen, hat allerdings nicht funktioneirt. Deshalb habe ich die resource-Datei als ANSI-Code gespeichert und siehe da: es klappt einwandfrei <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2474390</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2474390</guid><dc:creator><![CDATA[ACnut]]></dc:creator><pubDate>Fri, 06 Nov 2015 07:34:42 GMT</pubDate></item></channel></rss>