codexmlreader.java
来自「一个java 代码生成器」· Java 代码 · 共 99 行
JAVA
99 行
package com.jenerator.regen;
/*<Imports>*/
import com.jenerator.util.XMLConnect;
import org.apache.log4j.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
/*</Imports>*/
/**
*
*
*/
public class CodeXmlReader implements CodeReader {
//ATTRIBUTES
private Document doc;
private Logger log = Logger.getLogger(com.jenerator.regen.CodeXmlReader.class.getName());
//CONSTRUCTORS
public CodeXmlReader(File file) throws ExtracterException {
try {
doc = new XMLConnect(convertJavaSourceIntoXml(file)).readXmlString();
} catch (SAXException e) {
throw new ExtracterException(e);
} catch (IOException e) {
throw new ExtracterException(e);
} catch (ExtracterException e) {
throw e;
}
}
//METHODS
/**
*
*/
private String convertJavaSourceIntoXml(File file) throws ExtracterException {
StringBuffer buff = new StringBuffer();
BufferedReader d = null;
try {
d = new BufferedReader(new FileReader(file));
String str = "<?xml version='1.0' ?>\n<Source>\n";
buff.append(str);
while (str != null) {
str = d.readLine();
if (str != null)
buff.append(str + "\n");
}
buff.append("\n</Source>\n");
} catch (IOException e) {
log.fatal(e);
throw new ExtracterException(e);
} finally {
try {
d.close();
} catch (IOException e) {
log.fatal(e);
}
}
return buff.toString();
}
/** * <manual-code> Manual code which will be extracted</manual-code> * * */
public String getClassCode() throws ExtracterException {
String codeValue = "";
try {
NodeList element = doc.getElementsByTagName("manual-code");
codeValue = element.item(0).getChildNodes().item(0).getNodeValue();
log.debug("CLASS CODE Extracter : " + codeValue);
} catch (Exception e) {
log.fatal("The <manual-code> element delimiters might be missing in the source code", e);
throw new ExtracterException(e);
}
return codeValue;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?