<?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[Text auslesen, finde Fehler nicht (gebe Quellcode an)]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche ein Textfile auszulesen, der wie folgt ausschaut:</p>
<p>SN97do 0.010 33.72 0.39 Gold \<br />
SN97E 0.013 34.02 0.31 Gold \<br />
SN97cn 0.017 34.71 0.28 Gold \<br />
SN92al 0.014 34.12 0.29 Gold \<br />
SN91ag 0.014 34.13 0.29 Gold \<br />
SN97Y 0.016 34.53 0.27 Gold \<br />
SN92bo 0.017 34.70 0.26 Gold \<br />
SN93ae 0.018 34.29 0.25 Gold \</p>
<p>Ist nur ein Ausschnitt.</p>
<p>Mein Code hingegen schaut so aus:<br />
(Ich kenne mich mit Programmieren leider nur wenig aus).</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

using namespace std;

int main(int argc, char *argv[])
{
    int zeilen;
    double name, red, distancemod, error, quality;
    FILE *iof;
    char fname[96];
    sprintf(fname, &quot;/Users/Username/Documents/SNe_gold_sample.dat.txt&quot;);
    iof = fopen(fname, &quot;r&quot;);

    //Öffnen klappt
    if(!iof)
    {
        printf(&quot;could not open result_ordner\n&quot;);
        exit(1);
    }

    //hier werden die Anzahl der Zeilen ausgelesen
    int j, c;
    j=0;
    while(1)
    {
        c = fgetc(iof);
        if (c==EOF) break;
        if (c=='\n') j++;
    }
    //anzahl der ist:
    zeilen = j;
    fclose(iof);

    sprintf(fname, &quot;/Users/Username/Documents/SNe_gold_sample.dat.txt&quot;);
    iof = fopen(fname, &quot;r&quot;);
    for(int i = 0; i &lt; zeilen; i++)
    {
        fscanf(iof, &quot;%lf %lf %lf %lf %lf\n&quot;, &amp;name, &amp;red, &amp;distancemod, &amp;error, &amp;quality);

        cout &lt;&lt; red &lt;&lt; endl;

    }
    fclose(iof);

    return(0);
}
</code></pre>
<p>Ich vermute, dass das Problem entweder das Spaltenweise auslesen ist, oder dass z.B. für die erste Zeile ein double verwende.</p>
<p>Es wird kein Fehler ausgespuckt, sondern das, was gerade auf dem Speicher drauf ist, wie z.B. 6.7e-320.</p>
<p>Ich hoffe ihr könnt helfen.</p>
<p>lg</p>
<p>Ollowain</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/336631/text-auslesen-finde-fehler-nicht-gebe-quellcode-an</link><generator>RSS for Node</generator><lastBuildDate>Sun, 19 Apr 2026 00:21:07 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/336631.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 04 Feb 2016 23:17:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Text auslesen, finde Fehler nicht (gebe Quellcode an) on Thu, 04 Feb 2016 23:17:28 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich versuche ein Textfile auszulesen, der wie folgt ausschaut:</p>
<p>SN97do 0.010 33.72 0.39 Gold \<br />
SN97E 0.013 34.02 0.31 Gold \<br />
SN97cn 0.017 34.71 0.28 Gold \<br />
SN92al 0.014 34.12 0.29 Gold \<br />
SN91ag 0.014 34.13 0.29 Gold \<br />
SN97Y 0.016 34.53 0.27 Gold \<br />
SN92bo 0.017 34.70 0.26 Gold \<br />
SN93ae 0.018 34.29 0.25 Gold \</p>
<p>Ist nur ein Ausschnitt.</p>
<p>Mein Code hingegen schaut so aus:<br />
(Ich kenne mich mit Programmieren leider nur wenig aus).</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;

using namespace std;

int main(int argc, char *argv[])
{
    int zeilen;
    double name, red, distancemod, error, quality;
    FILE *iof;
    char fname[96];
    sprintf(fname, &quot;/Users/Username/Documents/SNe_gold_sample.dat.txt&quot;);
    iof = fopen(fname, &quot;r&quot;);

    //Öffnen klappt
    if(!iof)
    {
        printf(&quot;could not open result_ordner\n&quot;);
        exit(1);
    }

    //hier werden die Anzahl der Zeilen ausgelesen
    int j, c;
    j=0;
    while(1)
    {
        c = fgetc(iof);
        if (c==EOF) break;
        if (c=='\n') j++;
    }
    //anzahl der ist:
    zeilen = j;
    fclose(iof);

    sprintf(fname, &quot;/Users/Username/Documents/SNe_gold_sample.dat.txt&quot;);
    iof = fopen(fname, &quot;r&quot;);
    for(int i = 0; i &lt; zeilen; i++)
    {
        fscanf(iof, &quot;%lf %lf %lf %lf %lf\n&quot;, &amp;name, &amp;red, &amp;distancemod, &amp;error, &amp;quality);

        cout &lt;&lt; red &lt;&lt; endl;

    }
    fclose(iof);

    return(0);
}
</code></pre>
<p>Ich vermute, dass das Problem entweder das Spaltenweise auslesen ist, oder dass z.B. für die erste Zeile ein double verwende.</p>
<p>Es wird kein Fehler ausgespuckt, sondern das, was gerade auf dem Speicher drauf ist, wie z.B. 6.7e-320.</p>
<p>Ich hoffe ihr könnt helfen.</p>
<p>lg</p>
<p>Ollowain</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2485920</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2485920</guid><dc:creator><![CDATA[ollowain86]]></dc:creator><pubDate>Thu, 04 Feb 2016 23:17:28 GMT</pubDate></item><item><title><![CDATA[Reply to Text auslesen, finde Fehler nicht (gebe Quellcode an) on Sun, 07 Feb 2016 04:06:17 GMT]]></title><description><![CDATA[<pre><code>#include &lt;iostream&gt;
#include &lt;fstream&gt;
#include &lt;vector&gt;

// am besten noch mit &gt;&gt; und &lt;&lt; operator
struct Reading
{
    std::string name;
    std::string quality;
    double red;
    double distancemod;
    double error;

    Reading(const std::string&amp; name, 
            double red,
            double distancemod, 
            double error, 
            const std::string&amp; quality)
        :name(names), quality(quality), red(red),
         distancemod(distancemod), error(error);
};

int main()
{
    const std::string filename = &quot;data.txt&quot;;
    std::ifstream ist(filename);
    if (ist)
    {
        std::cerr &lt;&lt; &quot;Unable to open  file &quot; &lt;&lt; filename &lt;&lt; '\n';
        return 1;
    }

    std::string name, quality;
    double red = 0, distancemod = 0, error = 0;
    char delim = ' ';

    std::vector&lt;Reading&gt; readings;
    while (ist &gt;&gt; name &gt;&gt; red &gt;&gt; distancemod &gt;&gt; error &gt;&gt; quality &gt;&gt; delim) &amp;&amp;
           delim == '\')
    {
        readings.emplace_back(name, quality, red, distancemod, error);
    }

    cout &lt;&lt; &quot;Gelese Daten:\n\n&quot;;
    for (const auto&amp; r : readins)
    {
        std::Cout &lt;&lt; r.name &lt;&lt; ' '
                  &lt;&lt; r.red &lt;&lt; ' ' &lt;&lt;
                  &lt;&lt; r.distancemod &lt;&lt; ' ';
                  &lt;&lt; r.error &lt;&lt; ' '
                  &lt;&lt; r.quality &lt;&lt; &quot; \\\n&quot;;
    }
    return 0;
}
</code></pre>
<p>Du kannst den Code gerne anschauen für Anre*g*ungen, oder Stichwörter zum recherchieren. Für copy-pate wirst du wohl die Fehler ausbügeln müssen <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>
<pre><code>^pun intended
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2485924</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2485924</guid><dc:creator><![CDATA[HarteWare]]></dc:creator><pubDate>Sun, 07 Feb 2016 04:06:17 GMT</pubDate></item><item><title><![CDATA[Reply to Text auslesen, finde Fehler nicht (gebe Quellcode an) on Fri, 05 Feb 2016 08:36:52 GMT]]></title><description><![CDATA[<p>Der Wortwitz war....reden wir nicht darüber.<br />
Regex ist auch fein für. Aber der TE sollte erstmal überlegen, ob er C oder C++ programmieren möchte. Falls das letztere: std::string und fstrram sind deine freunde.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2485944</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2485944</guid><dc:creator><![CDATA[Techel]]></dc:creator><pubDate>Fri, 05 Feb 2016 08:36:52 GMT</pubDate></item><item><title><![CDATA[Reply to Text auslesen, finde Fehler nicht (gebe Quellcode an) on Sat, 06 Feb 2016 18:47:39 GMT]]></title><description><![CDATA[<p>Gibt keinen, ich spreche zZ fast kein Deutsch mehr und hab peinlicherweise gedacht, dass das Wort etwas bedeutet, was es aber garnicht tut, mb <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2486109</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2486109</guid><dc:creator><![CDATA[HarteWare]]></dc:creator><pubDate>Sat, 06 Feb 2016 18:47:39 GMT</pubDate></item></channel></rss>