Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Ansi-C, Textdatei auslesen und chars zusamenfügen?

Mitglied: ooAlbert

ooAlbert (Level 1) - Jetzt verbinden

09.07.2007, aktualisiert 15.08.2007, 6781 Aufrufe, 5 Kommentare

Hi,

ich komm eigentlich von der Javaschiene und kenn C nicht wirklich aber ich benötige für eine Aufgabe etwas Compiliertes.


Es geht darum, eine TXT zeichenweise auszulesen und dann in einen String zu füllen. Das ganze soll dann ausgegeben werden wenn eine Zeile beendet ist. Da C ja keine Strings beherscht muß man das ja alles über diese Char-Arrays mühsam zusammenkleben.


Jedoch scheint das nicht so zu klappen wie gedacht. In der refference stand das strcat Chars aneinanderkleben kann, bzw. einen Char-Array mit chars auffüllt. Trotzdem meckert der Compiler das die Strcat-anweisung nicht korrekt wäre.


01.
#include <stdio.h>  
02.
#include <stdlib.h>  
03.
#include <conio.h>  
04.
#include <string.h>  
05.
 
06.
main(void)  
07.
{  
08.
FILE *datei;  
09.
 
10.
datei = fopen("123.txt", "r");  
11.
if(NULL != datei) {  
12.
      printf("Konnte Datei öffnen!\n");  
13.
   }  
14.
 
15.
char a;  
16.
char b[100];  
17.
   
18.
while ( a != EOF )  
19.
{  
20.
      a=fgetc(datei);  
21.
      strcat(b[100], a);  
22.
       
23.
      if (a == '\n')  
24.
      {        
25.
       printf("%s", b);  
26.
      }  
27.
}  
28.
return 0;  
29.
}  
30.
 
Mitglied: VoSp
10.07.2007 um 08:23 Uhr
Hallo,

probiers mal mit

strcat(b, a);

Bis dann

VoSp
Bitte warten ..
Mitglied: ooAlbert
10.07.2007 um 13:38 Uhr
nein das bringt nicht, es bleibt bei der fehlermeldung ... also ich bin nir nicht sicher aber kann es sein das man statt der variable einen pointer der auf die variable zeigt verwenden muß? Kann ja sein das diese funktion so beschränkz ist, das die nur die speicheradressen zusammenfügen kann.

Ansonsten würde mir nur noch einfallen den chararray wie jeden normalen array mit indize ablaufen zu lassen und dann an jeder stelle den neuen char einzufügen. Wovon ich glaubte das sowas strcat macht.
Bitte warten ..
Mitglied: VoSp
10.07.2007 um 13:48 Uhr
Tach,

also ich habe das gerade mal ausprobiert, das hier sollte funktionieren:
01.
#include <stdio.h> 
02.
#include <string.h> 
03.
 
04.
int main (void) 
05.
06.
 
07.
  char string[80]; 
08.
 
09.
  strcpy (string,"Das "); 
10.
 
11.
  strcat (string,"ist "); 
12.
  strcat (string,"ein "); 
13.
  strcat (string,"Test."); 
14.
 
15.
  puts (string); 
16.
 
17.
  return 0; 
18.
 
19.
}
Das funktioniert so. Versuch doch mal den String mittels strcpy erstmal zu "initialisieren".

Bis dann
VoSp
Bitte warten ..
Mitglied: Guenni
11.07.2007 um 18:03 Uhr
@ooAlbert

Hi,

Strcat funktioniert nur mit strings.

Außerdem versuchst du mit ...
...
strcat(b[100], a);
...
... jedesmal das gelesene Zeichen in das hundertste
Element eines Arrays einzulesen.

Du mußt schon einen Zähler mitführen, in welchen Element
die gelesene Zeile eingefügt werden soll.

01.
#include "stdafx.h" 
02.
#include <stdio.h>  
03.
#include <stdlib.h>  
04.
#include <conio.h>  
05.
#include <string.h>  
06.
 
07.
 
08.
int main(void)  
09.
{  
10.
FILE *datei;  
11.
 
12.
datei = fopen("c:\\123.txt", "r");  
13.
int i=0;  
14.
char b[100];  
15.
   
16.
while (!feof(datei)){  
17.
      b[i]=fgetc(datei); 
18.
	  i++; 
19.
}  
20.
b[i]='\0'; 
21.
printf("%s",b); 
22.
fclose(datei); 
23.
return 0;  
24.
}
Gruß
Günni

PS.:

Da C ja keine Strings beherscht muß man das ja alles über diese
Char-Arrays mühsam zusammenkleben.

C kann sehr wohl mit strings umgehen:

char *s;

Allerdings muß man für *char s eine Speicherresevierung vornehmen
Bitte warten ..
Mitglied: lowbyte1
15.08.2007 um 07:45 Uhr
das zeigt mir wider mal, das man nichts behaupten sollte wen man es selber nicht weis...


(es gibt nur eins 0 or 1) [lowbyte]
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Einen bestimmten Teil einer Textdatei auslesen

gelöst Frage von Focus1610Batch & Shell5 Kommentare

Hallo, ich brauche mal einen Denkanstoß. Ich bekomme per FTP von einem Kunden täglich mehrere Textdateien. Diese haben unterschiudlich ...

Batch & Shell

Auslesen der "LAN-Verbinung" in eine Textdatei

gelöst Frage von simonsaysBatch & Shell2 Kommentare

Hallo Gleich mal vorab: Ich bin ein Batch-Nullinger :-) Wir verwenden fixe IP-Adressen und fixe DNS-Server Jetzt hätte ich ...

Batch & Shell

Batch Textdatei Spaltenweise auslesen

Frage von PinkFLuffyUnicornBatch & Shell7 Kommentare

hi, ist es irgendwie möglich anstatt eine Textdatei via Batch Spaltenweise auszulesen und nicht zeilenweise wie das normal ganz ...

Batch & Shell

Variable in TextDatei auslesen

gelöst Frage von arvaxtrBatch & Shell5 Kommentare

Hallo Leute, ich habe eine TextDatei, in der eine Benutzervariable steht: %MyVar% ist als Benutzervariable in den Umgebungsvariablen definiert. ...

Neue Wissensbeiträge
Humor (lol)
IoT-Gefahr: Smartes Aquarium leckt!
Information von Lochkartenstanzer vor 1 TagHumor (lol)3 Kommentare

Moin, Die IoT-Manie hat weitere Opfer gefunden. Ein Casino-Leck durch ein smartes Aquarium: Allerdings haben sie kein Wasser, sondern ...

Router & Routing

Alte Fritzbox 7270 mit VPN und SIP-Telefonie hinter O2 Homebox 6641 als "Modem"

Erfahrungsbericht von the-buccaneer vor 1 TagRouter & Routing3 Kommentare

Nun war es soweit: Auch O2 hat mich mit VOIP zwangsbeglückt. Heute am Privatanschluss, in 2 Wochen ist das ...

Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 1 TagSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 2 TagenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Heiß diskutierte Inhalte
Sicherheit
Verbindliche Zustellung per E-Mail?
Frage von ahussainSicherheit18 Kommentare

Hallo allerseits, ein Kunde von mir nutzt intensiv Fax. Hauptgrund: zusammen mit einer Empfangsbestätigung ist eine verbindliche Zustellung gewährleistet. ...

Router & Routing
Mikrotik: Routing zwischen Interfaces mit Geräten ohne Gateway
Frage von TonLichtVideoRouter & Routing17 Kommentare

Hallo zusammen, ich komme aus dem Veranstaltungstechnik Bereich und habe zwei Netze um verschiedene Hardware zu Remoten. CONTROL1 192.168.1.0/24 ...

Linux Netzwerk
Raspberry Pi 3: WLAN Power save deaktivieren
Frage von nordie92Linux Netzwerk14 Kommentare

Moin moin, mein Raspberry Pi 3 Model B benötigt eine dauerhaft aktive WLAN-Verbindung. Leider bricht die WLAN-Verbindung nach einigen ...

SAN, NAS, DAS
Entscheidung SAN Dell oder HP
Frage von VincorSAN, NAS, DAS13 Kommentare

Hallo, wir wollen uns für unsere Hyper V Umgebung eine neue SAN Anschaffen. Es laufen 30 VM's darunter, DC; ...