elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  consulta sobre Split o strtok en c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: consulta sobre Split o strtok en c++  (Leído 3,069 veces)
xkiz ™


Desconectado Desconectado

Mensajes: 1.252


Ver Perfil WWW
consulta sobre Split o strtok en c++
« en: 25 Junio 2011, 19:41 pm »

bue, antes que nada vale la pena aclarar que busque en google el foro mismo y o no encontre lo que buscaba o no lo supe entender, por eso posteo esto aqui.

cuando arme esto en mi cabeza sonaba mas facil o no tan complicado almenos.

archivo.rc
Código
  1. STRINGTABLE DISCARDABLE
  2. BEGIN
  3.    201 "a01|a02|a03|a04"
  4.    202 "b01|b02|b03|b04"
  5.    203 "c01|c02|c03|c04"
  6.    204 "d01|d02|d03|d04"
  7.    205 "e01|e02|e03|e04"
  8.    206 "f01|f02|f03|f04"
  9.    207 "g01|g02|g03|g04"
  10. END
  11.  

necesito cargar esos  valores de StringTable en un ListView, lo que estoy tratando de hacer y no me sale es lo siguiente:

Código
  1. #include <windows.h>
  2.  
  3. void Split(char *str){
  4. TCHAR STRING[350];
  5. char * pch;
  6. char * pch2;
  7.  
  8. pch = strtok(str, ",");
  9. while(pch!=NULL){
  10. LoadString(NULL, atoi(pch), STRING, sizeof(STRING));
  11.  
  12. pch2 = strtok(STRING, "|");
  13. while(pch2!=NULL){
  14. OutputDebugString((LPCTSTR) pch2);
  15. pch2 = strtok(NULL, "|");
  16. }
  17. pch = strtok(NULL, ",");
  18. }
  19. }
  20.  
  21. int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow){
  22. Split("201,202,203,204,205,206,207");
  23. return 0;
  24. }
  25.  

osea asi es como se me ocurrio hacerlo a mi, pero aparentemente eso esta mal, y no se realmente como hacer parahacer el split para recorrer todo los valores....


PD: estoy trabajano en VC++ 6.0,  Not using MFC


« Última modificación: 25 Junio 2011, 20:03 pm por xkiz ™ » En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: consulta sobre Split o strtok en c++
« Respuesta #1 en: 25 Junio 2011, 19:56 pm »

Te dejo un ejemplo:

Código
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. char txt[] = "201 a01|a02|a03|a04";
  5. int main(void)
  6. {
  7.    char *trozo = strtok(txt, "|");
  8.    while(trozo != NULL)
  9.    {
  10.        printf("Valor : %s\n", trozo);
  11.        trozo = strtok(NULL, "|");
  12.    }
  13.    return 0;
  14. }
  15.  


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
xkiz ™


Desconectado Desconectado

Mensajes: 1.252


Ver Perfil WWW
Re: consulta sobre Split o strtok en c++
« Respuesta #2 en: 25 Junio 2011, 20:19 pm »

mmmmmmmm. me perdi, osea lo que necesito es hacer un strtok dentro de otro, el primero me da el id que uso para cargar con LoadString el stringtable X y a ese stringtable X hacer otro strtok para parsear los "|".

el string de Split() cambia.

Código
  1. Split("201,202,203,204,205,206,207");
  2. //Split("301,302,303,304,305,306,307");
  3. //Split("401,402,403,404,405,406,407");
  4. // ....
  5. }
  6.  
  7.  
« Última modificación: 25 Junio 2011, 20:21 pm por xkiz ™ » En línea

xkiz ™


Desconectado Desconectado

Mensajes: 1.252


Ver Perfil WWW
Re: consulta sobre Split o strtok en c++
« Respuesta #3 en: 26 Junio 2011, 00:18 am »

creo que encontre un articulo donde muestra como hacer lo que yo estababuscando como hacer, aqui dejo el link por si a alguien le interesa o.....
Link: Simple string parsing in nested loops (codeproject)

PD: si alguien sabe de alguna forma mas simple de hacer eso, avise, toda sugerencia siempre es bienvenida.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
strtok para la clase string [?]
Programación C/C++
.:BlackCoder:. 2 3,577 Último mensaje 16 Junio 2010, 00:26 am
por .:BlackCoder:.
Separar string con strtok
Programación C/C++
janus_gf 0 3,483 Último mensaje 21 Febrero 2011, 09:19 am
por janus_gf
strtok
Programación C/C++
LAULAU12 2 3,014 Último mensaje 27 Enero 2015, 16:26 pm
por elProfeta1979
Duda sobre sscanf y strtok
Programación C/C++
antolinalvaro 1 1,497 Último mensaje 1 Agosto 2018, 15:11 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines