Перейти к содержанию
Авторизация  
GorDeveloper

Парсер

Рекомендуемые сообщения

thumb-f909e00a3176ff45419956b842d6f662-screenshot_1.png

Название: Парсер

Добавил: AwakenDev

Добавлен: 22 Apr 2014

Категория: Прочее

Автор: AwakenDev

 

Было нечего делать на работе. Нагавнокодил перегонщик итемов из ItemName для себя. При должном подходе можно подпилить для каких угодно целей. Сойдёт для более менее знающих людей.

 

Нажмите здесь, чтобы скачать файл

  • Upvote 9

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Из всех слов понял только слово - людей - лайк поставил, за -наговнокодил-

 

Да в общем другие слова и не нужны, для тех кто не подходит под группу людей из последнего предложения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кому и для чего это может понадобиться?

 

Откуда я знаю? Кому надо - тот заберёт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пойду лабы на си публиковать. Кому надо - тот заберет.

pre_1398179853__genius-photo.png

 

Я рад за тебя, троллидзе.

Не флудерасть.

Изменено пользователем AwakenDev

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не красиво оставлять catch пустым

добавь везде

catch (Exception e)

{

e.printStackTrace();

}

 

молодец пригодится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не красиво оставлять catch пустым

добавь везде

catch (Exception e)

{

e.printStackTrace();

}

 

молодец пригодится.

 

В целом catch тут, просто костыль от IOException :D

Я ж написал, "Нечего было делать...", поэтому о правильности реализации особо не думал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В целом catch тут, просто костыль от IOException :D

Я ж написал, "Нечего было делать...", поэтому о правильности реализации особо не думал.

ну и зачем выкладывать? учим начинающих не пойми чему, а потом будете же их тролить за написания кода подобного

минусовать за это надо, а не плюсы тыкать....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ну и зачем выкладывать? учим начинающих не пойми чему, а потом будете же их тролить за написания кода подобного

минусовать за это надо, а не плюсы тыкать....

 

ну вот захотел я выложить. Начинающие, вряд ли вообще поймут как сие пользовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот что-то на подобии, парсит с клиента скиллы + описание:

 

 

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.LineNumberReader;
import java.util.StringTokenizer;

/**
* @Author AwakenDev
**/

public class ParserApp
{
private static String inputFilename = "123.txt";
private static String outputFilename = "213.txt";

public static void main(String args[]) throws Exception
{
load();
}

public static void load()
{
File f = new File(inputFilename);
if (!f.exists())
{
System.out.println("Not find file: " + f.getAbsolutePath());
}
LineNumberReader reader = null;
try
{
reader = new LineNumberReader(new FileReader(f));
String line = null;
while ((line = reader.readLine()) != null)
{
if (line.trim().length() == 0 || line.startsWith("id")) continue;

String args[] = line.split("\t", -1);
String id = args[0];
String level = args[1];
String name = args[2];
String description = args[3];
String desc_add = args[4];
write(id, level, name, description, desc_add);
}
}
catch (Exception e)
{
System.out.println("Exception: " + e);
}
finally
{
try
{
reader.close();
}
catch (Exception e)
{
}
}
}

public static void write(String id, String level, String name, String description, String desc_add)
{
try
{
File f = new File(outputFilename);

if (!f.exists())
{
f.createNewFile();
}
FileWriter writer = new FileWriter(f, true);
writer.write("<!-- " + description + "-->\n");
writer.write("<!-- " + desc_add + "-->\n");
writer.write("<skill id = \"" + id + "\" name = \"" + name + "\" level = \"" + level + ">" + "\n");
writer.write("\t" + "<set name = \"skillType\" val = \"NOTDONE\"/>"+ "\n");
writer.write("\t" + "<set name=\"target\" val=\"TARGET_NONE\"/>"+ "\n");
writer.write("\t" + "<set name = \"operationType\" val = \"OP_ACTIVE\"/>"+ "\n");
writer.write("</skill>" + "\n");
writer.close();
}
catch (Exception e)
{
}

}
}

 

 

Единственное, что нужно сначала файл сам декриптовать в читаемый для текстового редактора формат (L2Edit или как там его) и переименовать в 123.txt.

Может позже сделаю запись сразу в xml файл =)

Изменено пользователем DiQuero

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот что-то на подобии, парсит с клиента скиллы + описание:

 

 

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.LineNumberReader;
import java.util.StringTokenizer;

/**
* @Author AwakenDev
**/

public class ParserApp
{
private static String inputFilename = "123.txt";
private static String outputFilename = "213.txt";

public static void main(String args[]) throws Exception
{
load();
}

public static void load()
{
File f = new File(inputFilename);
if (!f.exists())
{
System.out.println("Not find file: " + f.getAbsolutePath());
}
LineNumberReader reader = null;
try
{
reader = new LineNumberReader(new FileReader(f));
String line = null;
while ((line = reader.readLine()) != null)
{
if (line.trim().length() == 0 || line.startsWith("id")) continue;

String args[] = line.split("\t", -1);
String id = args[0];
String level = args[1];
String name = args[2];
String description = args[3];
String desc_add = args[4];
write(id, level, name, description, desc_add);
}
}
catch (Exception e)
{
System.out.println("Exception: " + e);
}
finally
{
try
{
reader.close();
}
catch (Exception e)
{
}
}
}

public static void write(String id, String level, String name, String description, String desc_add)
{
try
{
File f = new File(outputFilename);

if (!f.exists())
{
f.createNewFile();
}
FileWriter writer = new FileWriter(f, true);
writer.write("<!-- " + description + "-->\n");
writer.write("<!-- " + desc_add + "-->\n");
writer.write("<skill id = \"" + id + "\" name = \"" + name + "\" level = \"" + level + ">" + "\n");
writer.write("\t" + "<set name = \"skillType\" val = \"NOTDONE\"/>"+ "\n");
writer.write("\t" + "<set name=\"target\" val=\"TARGET_NONE\"/>"+ "\n");
writer.write("\t" + "<set name = \"operationType\" val = \"OP_ACTIVE\"/>"+ "\n");
writer.write("</skill>" + "\n");
writer.close();
}
catch (Exception e)
{
}

}
}

 

 

Единственное, что нужно сначала файл сам декриптовать в читаемый для текстового редактора формат (L2Edit или как там его) и переименовать в 123.txt.

Может позже сделаю запись сразу в xml файл =)

Что??? Это и есть парсер AwakenDev..... Копирайт "@Author AwakenDev" такой незаметный, да и код тоже разный, да?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не, код переписанный нормально, в отличии от моей пятиминутки :D

 

Просто некоторые были не в курсе о таких чудесных ютилках как FileReader, FileWriter и т.д.

 

Надо было подтолкнуть созданием примера.

 

З.Ы. 2 DiQuero в xml перебивается элементарно. Даже если в несколько.

Изменено пользователем AwakenDev

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что??? Это и есть парсер AwakenDev..... Копирайт "@Author AwakenDev" такой незаметный, да и код тоже разный, да?

А я говорю, что это мое дело? Я просто изменил сам метод чтения и все. А копирайт было даже лень убирать :D

Не, код переписанный нормально, в отличии от моей пятиминутки :D

 

Просто некоторые были не в курсе о таких чудесных ютилках как FileReader, FileWriter и т.д.

 

Надо было подтолкнуть созданием примера.

 

З.Ы. 2 DiQuero в xml перебивается элементарно. Даже если в несколько.

Ну я знаю, что перебивается просто =) В принципе, я пока учу то, что задают на парах, по-этому на подробное изучение Java никак не хватает времени. В общем, благодарю, так сказать, за парсер, а то никак не мог понять всю суть считывания и записи файлов. :unknw:

Изменено пользователем DiQuero

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А я говорю, что это мое дело? Я просто изменил сам метод чтения и все. А копирайт было даже лень убирать :D

 

Ну я знаю, что перебивается просто =) В принципе, я пока учу то, что задают на парах, по-этому на подробное изучение Java никак не хватает времени. В общем, благодарю, так сказать, за парсер, а то никак не мог понять всю суть считывания и записи файлов. :unknw:

 

Да подробного изучения совсем не надо. Достаточно разметки и указания dtd с листом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...