Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: th3y en Julio 29, 2012, 04:28:20 pm
-
Hola a todos, este seria mi primer post, eh seguido mucho tiempo esta pagina y pues necesito ayuda ahora D:
Como es posible extraer el código de una llave principal?
"#DOTA_Item_Build_Core_Items" 'ITEMS NUCLEO
{
"item" "item_vanguard" 'Vanguard
"item" "item_armlet" 'Mordiggan
"item" "item_basher" 'Cranium Basher
}
Por ejemplo, tengo esto en un archivo de texto, quiero que en el formulario cuando cargue el archivo extraiga en un label:
ITEMS NUCLEO
y que me extraiga los nombres por código para después reemplazarlos por el verdadero nombre y/o por una imagen
item_vanguard
item_armlet
item_basher
Hay alguna forma de hacer esto? extraer los valores que solo se piden?
aa y por Consiguiente. Como podría guardar lo editado a texto, el problema principal es que no guarda con las tabulaciones y se vuelve un texto simple.. :)
Gracias a todos
-
Cuando guardes, hazlo de forma secuencial, linea por linea, grupo por grupo y cuando necesites tabulaciones usa vbTab
Y para leer, siempre sera así? o puede hacer algo así
"#DOTA_Item_Build_Core_Items" { "item" "item_vanguard" }
Si es así, podrias probar expresiones regulares, si no, leer cosas tipo llaves y de ahí leer lo que sea hasta que cierre la llave y armar un grupo :P
-
hola está un poco confuso la explicacion pero entiendo que para manejar textos y buscar y reemplazar lo podrias hacer en notepad++ que es un editor exelente!!
-
Chicos en verdad,lo posteo en VB6 porque necesito ayuda de como extraer las palabras desde visual basic modificarlas y/o agregarlas..
es algo muy parecido a cuando haces modificaciones de archivos ini por vb6
asi que estoy buscandolo pero para llaves y las otras funciones que habia comentado xD
-
pregunta basica ¿quien genera ese archivo de texto? , parece ser como un formato de JSON.
-
si ami me late también que es un JSON, en cierto caso Coco me paso este enlace que esta muy bueno http://www.ediy.co.nz/vbjson-json-parser-library-in-vb6-xidc55680.html
cualquier cosa tira mas información o pone el archivo completo, de donde lo sacas y si es muy cambiante o siempre asi de 3 items.
Saludos y bienvenido al foro.
-
Este es el archivo completo:
"itembuilds/Lifestealer.txt"
{
"Items"
{
"#DOTA_Item_Build_Starting_Items"
{
"item" "item_tango"
"item" "item_flask"
"item" "item_stout_shield"
}
"#DOTA_Item_Build_Early_Game"
{
"item" "item_boots"
}
"#DOTA_Item_Build_Core_Items"
{
"item" "item_vanguard"
"item" "item_armlet"
"item" "item_basher"
}
"#DOTA_Item_Build_Luxury"
{
"item" "item_monkey_king_bar"
"item" "item_blink"
"item" "item_assault"
"item" "item_greater_crit"
"item" "item_mjollnir"
"item" "item_desolator"
"item" "item_heart"
"item" "item_black_king_bar"
"item" "item_orb_of_venom"
}
}
}
-Veran que para leer siempre es linea por linea
-La cantidad de items en una rama pueden variar, ser mas de 1 o mas de 3..
-Quien genera este archivo es el mismo juego DOTA2
-Nunca eh oido de JSON lo vere, aunque no se como empezar con ello
PD: Me encanta este foro, siempre me ah ayudado cuando eh desarrollado algunas aplicaciones, estare publicando algunos source code saludos
-
si es JSON, es como un xml pero distinto en la sintaxis, aunque tiene algunas ventajas sobre el xml.
busca entonces algo para parsear eso y listo, creo que en PSC hay algunas clases para hacerlo.
saludos.
-
Hola al parecer no es JSON no me funciono ni con el vb ni con json.parser.online (http://json.parser.online.fr/), por lo que pude averiguar lo llaman KeyValues (https://developer.valvesoftware.com/wiki/KeyValues) , la clase cuenta con funciones como estas (http://docs.hl2wars.com/dev/library/srcbase.html#keyvalues), pero no encontre alguna clase que lo ya este echa para vb6, quizas se pueda armar algo en base a esta desarrolada en C (http://pastebin.com/SUYWs5ij)
creo que una pista para seguir para armar la clase seria utilizar Dictionary de la referencia "Microsoft Scripting Runtime", creo que la lógica no seria muy diferente a la de la clase del JSON que te nombre en el link del post anterior.
Es un lindo desafió ya que si no me equivoco no esta echa en vb6, a ver quien se anima!!, sino se puede tirar la idea en elhacker.net (http://foro.elhacker.net/programacion_vb-b50.0/) que estos desafíos les encantan.
Saludos.
-
Arme un parser para estos archivos basado en la especificacion que posteo Leandro, el parser soporta texto con y sin comillas, escaping de caracteres y algunas "malformaciones" del documento, en el ejemplo pueden ver que el formato del documento esta "maltratado".
(http://i47.tinypic.com/2nh3ub9.png)
Descarga:
http://www.2shared.com/file/B7o_FLFx/KeyValues.html
-
Buena cobein ;), que cabeza envidiable, creo que esto es lo que th3y busca no?
Saludos