.| Autor | Beitrag |
|---|---|
|
000 30.08.2002, 10:48 Ratman2000 |
Ich hab da ein eher simples problem... Also: Ich mache ne Wortabfrage wo ich in nem File wörter stehen habe wie folgt: hure Nun möchte ich, das jedes Wort was der Client eingibt überprüft wird: if(FStrEq(pcmd,"say")) So weit so gut... Das problem was ich habe ist, das beim überprüfen der wörter fgets (zeile, 1000, Datei); immer Ergebnis = 0; also kein Badword zurück lifert. THX Ratman2000 -- |
|
Profil || Suche |
|
001 30.08.2002, 10:55 King of Darkness |
ich bin mir nich sicher aber lass dann doch einfach das letzte zeichen weg (is ja der zeilen umbruch) keine ahnung --Coding Center --- Tutorials über Programmierung und andere Themen |
|
Profil || Suche |
|
002 30.08.2002, 11:01 Ratman2000 |
hmm hintereinnander dan wäre ich wieder an dem problem die wörter einzeln zu teilen... Oder gibt es eine Möglichkeit, einfach in nem String zu suchen ? Wie kann ich den erfahren, ob es wirklich der Zeilenumbruch ist ? Und wie kann ich den erfahren, wie lang oder kurz ein satz iss damit ich mit einer for drauf gehen kann ? -- |
|
Profil || Suche |
|
003 30.08.2002, 15:02 the_viking |
Mach doch einfach so was: void trim_zeilenumbruch(char* string) Das wars. Die Funktion filtert alle '\n's, also Zeilenumbrüche, aus dem String heraus. du kannst "if(buffer[i] != '\n')" natürlich erweitern: if(buffer[i] != '\n' || buffer[i] != '\t') Dann filtert er alle Zeilenumbrüche und Tabstopps aus dem String. Aber für das "eine-zeile-aus-der-datei-mit-zeilenumbruch" ist das zu kompliziert. Da dann eher so was: char buffer[1000]; if(buffer[strlen(buffer)-1] == '\n') Das reicht schon. --thx, cu, MfG the_viking (( My =]=H=O=M=E=> Page! )) Dieser Beitrag wurde am 30.08.2002 um 15:03 von the_viking bearbeitet. |
|
Profil || Suche |
|
004 30.08.2002, 19:23 TheTinySteini |
http://hlpp.telefragged.com/tuts/cl_censoring.txt --TheTinySteini |
|
Profil || Suche |
|
005 30.08.2002, 20:43 Ratman2000 |
So ich nochmal *g* Ich habs noch immer nicht gepackt.... ich übergebe jetz jedes wort an meine checkbadwords routine unzwar so: int CheckStatus = 0; for (i = 0; i < CMD_ARGC();i++) Status = CheckBadWord(sCommand); if (Status == 1) SERVER_COMMAND(sCommand); und checke dan so: BOOL CheckBadWord(char *Word) std::string gamedir; char* game_dir= new char(); (*g_engfuncs.pfnGetGameDir)(game_dir); gamedir = (std::string)game_dir; #ifdef WIN32 if (Datei) strset(zeile,0); int lenght = strlen(buffer); int j = 0; for(int i=0;i<lenght;i++) if(FStrEq(Word,zeile)) SERVER_COMMAND(sCommand); aber das einzige was ich zurück bekomme ist eine 0 also niemals 1 egal ob das wort im file steht oder nicht... Wass mach ich falsch ? -- |
|
Profil || Suche |
|
006 30.08.2002, 20:44 Ratman2000 |
So ich nochmal *g* Ich habs noch immer nicht gepackt.... ich übergebe jetz jedes wort an meine checkbadwords routine unzwar so: int CheckStatus = 0; for (i = 0; i < CMD_ARGC();i++) Status = CheckBadWord(sCommand); if (Status == 1) SERVER_COMMAND(sCommand); und checke dan so: BOOL CheckBadWord(char *Word) std::string gamedir; char* game_dir= new char(); (*g_engfuncs.pfnGetGameDir)(game_dir); gamedir = (std::string)game_dir; #ifdef WIN32 if (Datei) strset(zeile,0); int lenght = strlen(buffer); int j = 0; for(int i=0;i<lenght;i++) if(FStrEq(Word,zeile)) SERVER_COMMAND(sCommand); aber das einzige was ich zurück bekomme ist eine 0 also niemals 1 egal ob das wort im file steht oder nicht... Wass mach ich falsch ? -- |
|
Profil || Suche |
|
007 30.08.2002, 20:44 Ratman2000 |
So ich nochmal *g* Ich habs noch immer nicht gepackt.... ich übergebe jetz jedes wort an meine checkbadwords routine unzwar so: int CheckStatus = 0; for (i = 0; i < CMD_ARGC();i++) Status = CheckBadWord(sCommand); if (Status == 1) SERVER_COMMAND(sCommand); und checke dan so: BOOL CheckBadWord(char *Word) std::string gamedir; char* game_dir= new char(); (*g_engfuncs.pfnGetGameDir)(game_dir); gamedir = (std::string)game_dir; #ifdef WIN32 if (Datei) strset(zeile,0); int lenght = strlen(buffer); int j = 0; for(int i=0;i<lenght;i++) if(FStrEq(Word,zeile)) SERVER_COMMAND(sCommand); aber das einzige was ich zurück bekomme ist eine 0 also niemals 1 egal ob das wort im file steht oder nicht... Wass mach ich falsch ? -- |
|
Profil || Suche |
|
008 30.08.2002, 20:44 Ratman2000 |
So ich nochmal *g* Ich habs noch immer nicht gepackt.... ich übergebe jetz jedes wort an meine checkbadwords routine unzwar so: int CheckStatus = 0; for (i = 0; i < CMD_ARGC();i++) Status = CheckBadWord(sCommand); if (Status == 1) SERVER_COMMAND(sCommand); und checke dan so: BOOL CheckBadWord(char *Word) std::string gamedir; char* game_dir= new char(); (*g_engfuncs.pfnGetGameDir)(game_dir); gamedir = (std::string)game_dir; #ifdef WIN32 if (Datei) strset(zeile,0); int lenght = strlen(buffer); int j = 0; for(int i=0;i<lenght;i++) if(FStrEq(Word,zeile)) SERVER_COMMAND(sCommand); aber das einzige was ich zurück bekomme ist eine 0 also niemals 1 egal ob das wort im file steht oder nicht... Wass mach ich falsch ? -- |
|
Profil || Suche |
|
009 31.08.2002, 17:07 TheTinySteini |
Wie jetz? Doppelter Doppelpost oder was? Junge, du machst dich echt verdammt schnell unbeliebt. --TheTinySteini |
|
Profil || Suche |
|
010 31.08.2002, 17:37 King of Darkness |
lol so wie der_vicking es gemacht hat sollte es doch gehn also wo is dein problem ??? oder mach es so wie ich es gesagt habe... wenn du eine zeile einiest ist logischer weise immer das letze zeichen ein zeilen umbruch (denke ich mal) --Coding Center --- Tutorials über Programmierung und andere Themen |
|
Profil || Suche |
|
011 31.08.2002, 19:02 the_viking |
Hehe King Of Darkness! Nicht immer ist das letzte Zeichen einer Zeile einer Datei ein Zeilenumbruch! Sondern nur dann, wenn die Zeile nicht die letzte Zeile ist, mit anderen worten: die Letzte Zeile hat (meistens) keinen Zeilenumbruch: test.txt: Oder du machst hinter jedes wort einen Zeilenumbruch: Z.1: "aaaa\n" Ach ja: wie willst du alle wörter in eine datei schreiben? so: strassewieseblöddumm oder so: strasse#####wiese#####blöd#####dumm##### ?? --thx, cu, MfG the_viking (( My =]=H=O=M=E=> Page! )) Dieser Beitrag wurde am 31.08.2002 um 19:04 von the_viking bearbeitet. |
|
Profil || Suche |
|
012 31.08.2002, 19:53 King of Darkness |
bestimmt so: bla Coding Center --- Tutorials über Programmierung und andere Themen |
|
Profil || Suche |
|
013 31.08.2002, 22:52 Ratman2000 |
Jo genau so wie king es meint ! |
|
Profil || Suche |
|
014 02.09.2002, 16:02 [RMen]OneStone |
strib?! --georg-wicherski@pixel-house.net | http://www.pixel-house.net/ - Coding Resource| http://www.google.de/ |
|
Profil || Suche |
|
015 02.09.2002, 16:06 Ratman2000 |
LOL ich glaub er meinte stirb |
|
Profil || Suche |

