Textfile einlesen
-
Hallo,
ich möchte ein Textfile einlesen und (später) im anderen Format wieder ausgeben.
Zur Zeit ließt er das File ein (fopen_s), es kommt aber in der Ausgabe nichts an.
Gruß
Berni
#include <stdio.h>
#include <stdlib.h>
#include <share.h>
#include "stdafx.h"int main(void)
{
FILE *stream;char s[12];
char c;if (fopen_s(&stream, "NetWorkNeu1.txt", "r") != 0)
printf("The file fscanf.out was not opened\n");
else
{fscanf_s(stream, "%c", &c);
fscanf_s(stream, "%s", s);// Output data read:
fprintf_s(stream,"%s\n", s);
fprintf_s(stream,"%c\n", &c);fclose(stream);
}return 0;
}
-
Bei fscanf_s fehlt der entscheidende Parameter für die Größe des Puffers.
PS: Und bitte packe deinen Code hier in Code Tags:
[cpp]...[/cpp]
-
Warum verwendest du die Funktionen mit _s hinten dran, und nicht einfach die standardisierten ohne, oder noch besser die streams, wie man sie in C++ üblicherweise benutzt? Guck dir mal die Hinweise zu fscanf_s an: https://msdn.microsoft.com/de-de/library/6ybhk9kc.aspx
-
Hallo Techel,
besten Dank für die Antwort.
Wenn ich die üblichen 'fopen' - Befehle benutze, bekomme ich die Meldung vom
Compiler:C4996 'fopen': This funktion or variable may be unsafe. Consider using 'fopen_s' instead. .......
Gruß
B.
-
Google? MSDN lesen?
Entweder ..._s Funktionen verwenden oder #define _CRT_SECURE_NO_WARNINGS definieren...