Tag: 解析

自动向数组添加元素

嗨,我不擅长Java,所以请耐心等待。 我正在尝试编写一个非常简单的Android应用程序,我需要一些编码方面的帮助。 事实是,我有一个服务器,它自动生成.png文件,并按数字顺序将它们保存到公共目录。 更新每天进行,并非详尽无遗。 无论如何,我可以将动态值分配给我的应用程序中的数组吗? private String[] myRemoteImages = { “http://sofzh.miximages.com/java/hypotheticalurl1.png”, “http://sofzh.miximages.com/java/hypotheticalurl2.png”, “http://sofzh.miximages.com/java/hypotheticalurl3.png”, “http://sofzh.miximages.com/java/hypotheticalurl4.png”, “http://sofzh.miximages.com/java/hypotheticalurl5.png”, “http://sofzh.miximages.com/java/hypotheticalurl6.png”, “http://sofzh.miximages.com/java/hypotheticalurl7.png”, “http://sofzh.miximages.com/java/hypotheticalurl8.png”, “http://sofzh.miximages.com/java/hypotheticalurl9.png”, “http://sofzh.miximages.com/java/hypotheticalurl10.png”, “http://sofzh.miximages.com/java/hypotheticalurl11.png”, “http://sofzh.miximages.com/java/hypotheticalurl12.png”, //…blah blah blah // these are all dynamically created so I won’t know what is the last number on the list }; 此数组最终将用于使用应用程序从我的服务器获取图像。 它工作到目前为止,但只有硬编码的URL。 我希望这些url是动态的,因为图片的数量会每天都在变化。 我怀疑正则表达式在Java中运行良好但是我再也不是专家了。 想到也许在服务器端编写一个脚本,生成一个现有值列表,并以某种方式解析它与Android应用程序。 谁能指出我正确的方向? 提前致谢。 澄清: 应用程序运行时,arrays不必动态resize。 我需要一种方法来读取远程目录中的现有图像列表,并传递该信息以在运行时自动填充数组。 解决 […]

使用XPATH表达式和Java解析XML文件

我想解析一个xml文件,我正在使用Java和xpath评估。 我想用xpath表达式输出当前的节点兄弟,而不使用getNextSibling()函数,这可能吗? 例如,如果我们读取name元素,我想添加xpath expression =“./ address”,以便在不使用getNextSibling()/的情况下输出“name”的兄弟。 xml文件如下: 我的代码如下: package dom_stack4; import org.w3c.dom.*; import javax.xml.xpath.*; import javax.xml.parsers.*; import java.io.IOException; import org.xml.sax.SAXException; public class Dom_stack4 { public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException, XPathExpressionException { // TODO code application logic here DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance(); domFactory.setNamespaceAware(true); DocumentBuilder builder = domFactory.newDocumentBuilder(); Document doc = builder.parse(“root.xml”); XPath […]

使用java解析css文件

首先,我想解释一下我在做什么,然后解释我的问题。 我需要扫描一个css文件并获取其所有内部链接(主要是图像),但我需要获取找到链接的行号。 现在我正在使用长笛库解析文件,它工作得很好我也使用LineNumberReader来获取找到链接的行号,但是这个类抛出了错误的行号。 例如:链接../../image/bg.gif在行号350中,但LineNumberReader类中的方法getLineNumber表示490。 所以,如果你们中的一些人能够以正确的方式驱使我并给我一个可能的解释,为什么LineNumberReader类可以做到这一点,我将不胜感激。 pd:另一个解决方案将非常感谢。 对不起可能的错别字,英语不是我的母语。

解析数据时出错org.json.JSONException:字符0处的输入结束

我正在尝试解析来自此URL的 JSON数据。 但我收到这些错误: 03-27 16:48:21.019:E / Buffer Error(23717):转换结果java.lang.NullPointerException时出错 03-27 16:48:21.059:E / JSON Parser(23717):解析数据时出错org.json.JSONException:字符0处的输入结束 当我调试我的代码时; getJsonFromUrl()方法返回null jobject 。 这是我使用的JSONParser类 。 是什么导致错误? public class JSONParser { static InputStream iStream = null; static JSONArray jarray = null; static JSONObject jObj= null; static String json = “”; public JSONParser() { } public JSONObject getJSONFromUrl(String url) { // Making HTTP […]

Jsoup设置了Accept-Language

是否有可能为Jsoup连接设置Accept-Language参数。 我尝试过: Jsoup.connection(url).userAgent(“Mozilla/5.0 (Windows NT 6.1; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0”).get(); Jsoup.connection(url).userAgent(“Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6”).get(); 但不起作用……

如何从文本文件中的每一行拆分单个列值?

我在需要解析的ASCII文本文件中有行。 列由可变数量的空格分隔,例如: column1 column2 column3 我如何拆分此行以返回仅包含值的数组? 谢谢

ANTLR java测试文件无法创建树语法对象

我正在使用针对java的ANTLR 3.x创建一个解析器。 我编写了解析器语法(用于创建抽象语法树,AST)和树语法(用于在AST上执行操作)。 最后,为了测试两个语法文件,我用Java编写了一个测试文件。 看看下面的代码, 协议语法 grammar protocol; options { language = Java; output = AST; } tokens{ //imaginary tokens PROT; INITIALP; PROC; TRANSITIONS; } @header { import twoprocess.Configuration; package com.javadude.antlr3.x.tutorial; } @lexer::header { package com.javadude.antlr3.x.tutorial; } /* parser rules, in lowercase letters */ program : declaration+ ; declaration :protocol |initialprocess |process |transitions ; protocol […]

读取两个具有相同名称Java的XML标记

我有一个用Java读取的XML文件,如下所示: Kun-Jing Lee John Smith 一开始一切都很好,然后就会出现这样的事情 Z. C. Huang J. C. Chen 如您所见, 标记在同一个块中被提及两次,因此,当我从调用该值时,它仅显示第一个。 这是读取XML文件的Java代码: package com.mkyong.seo; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; import org.w3c.dom.NodeList; import org.w3c.dom.Node; import org.w3c.dom.Element; import java.io.File; public class ReadXMLFile { public static void main(String argv[]) { try { File fXmlFile = new File(“/fileaddress/test-1.xml”); DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder dBuilder = […]

实例方法和变量的情况下javainheritance解析

根据java,实例方法解析基于参数的运行时类型。 但在解析实例变量时,它使用不同的方法,如下所示。 节目输出是…… Child Parent ParentNonStatic 这里第一个输出基于参数的运行时类型,但第三个输出不是。 谁可以解释一下这个? public class Child extends Parent { public static String foo = “Child”; public String hoo = “ChildNonStatic”; private Child() { super(1); } @Override String please() { return “Child”; } public static void main(String[] args) { Parent p = new Parent(); Child c = new Child(); //Resolving method […]

如何在实时语法荧光笔中处理多行注释?

我正在编写自己的文本编辑器,在Java中使用语法高亮显示,目前它只是在每次用户输入单个字符时解析并突出显示当前行。 虽然可能不是最有效的方式,但它足够好并且不会引起任何明显的性能问题。 在伪Java中,这将是我的代码的核心概念: public void textUpdated(String wholeText, int updateOffset, int updateLength) { int lineStart = getFirstLineStart(wholeText, updateOffset); int lineEnd = getLastLineEnd(wholeText, updateOffset + updateLength); List foundTokens = tokenizeText(wholeText, lineStart, lineEnd); for(Token token : foundTokens) { highlightText(token.offset, token.length, token.tokenType); } } 真正的问题在于多行注释。 要检查输入的字符是否在多行注释中,程序需要解析回最近出现的“/ *”,同时还要知道这种情况是出现在文字还是其他注释中。 如果文本量很小,这不会是一个问题,但如果文本包含20,000行代码,则可能必须在每个按键上扫描并重新突出显示20,000行代码,这将是非常低效的。 所以我的最终问题是:如何在语法高亮显示中处理多行令牌/注释,同时保持高效?