Tag: 解析

在Java中将日期转换为字符串并返回日期

在我的程序中,我试图将日期转换为字符串到指定的格式,然后再回到日期。 我需要日期为dd-MMM-yy格式。 所以,我正在使用SimpleDateFormat将日期转换为dd-MMM-yy格式, SimpleDateFormat sdf = new SimpleDateFormat(“dd-MMM-yy”); String bookingDate = sdf.format(myDate); 结果是我的预期,即23-May-12,但是当我使用parse()将字符串转换回日期时,它将更改为2012年5月23日13:16:14 IST 2012。 有没有办法在不改变格式的情况下将字符串转换回日期? 我严格地需要将指定格式的日期对象传递给查询。

将字符串解析为long,前导零

长话短说(Java): String input= “0888880747; long convert = Long.parseLong(input); convert的值现在是:888880747 如何将String解析为long但保留前导零?

在JAVA中使用XPath解析具有不同命名空间的xml

我正在做这个小项目,我的任务是读取一个xml文件并解析它,以便它可以存储在一个类中。 这是xml示例。 它是用SOAP编写的,我想做的就是得到 这部分解析了子节点,以便我可以创建一个具有’nodeName’作为属性的类,其值为’getNewTokenResponse’。 +会话密钥 {{session.key}} 但我真正的问题是,我发现很多很好的示例代码,名称空间没有前缀,xml文件的结构可能会有所不同。 所以在这里我很困惑地完成任务。 我会感激任何建议。 干杯:d

帮助Java SAX解析器理解错误的xml

我正在解析从网站返回的XML,但遗憾的是它有点格式错误。 我得到的XML如下: 据我所知,这是无效的,因为£ 是HTML字符,而不是XML字符,绝对不能出现在属性中。 假设我不能告诉网站遵守规则,我该怎么做才能解决这个问题? 我正在考虑使用FilterInputStream来过滤到达SAX解析器之前到达的数据,但这似乎超过了顶部。

DateTimeFormatter自动更正无效(语法上可能)的日历日期

当您尝试超出可能范围的日期时,Java DateTimeFormatter会引发exception,例如: DateTimeFormatter dtf = DateTimeFormatter.ofPattern(“M/d/yyyy”); String dateString = “12/32/2015”; LocalDate ld = LocalDate.parse(dateString, dtf); 将抛出: Exception in thread “main” java.time.format.DateTimeParseException: Text ’12/32/2015′ could not be parsed: Invalid value for DayOfMonth (valid values 1 – 28/31): 32 但是当我输入一个无效的日历日期时,它的标准在语法上仍然可行,它会将其自动更正为有效日期,例如: DateTimeFormatter dtf = DateTimeFormatter.ofPattern(“M/d/yyyy”); String dateString = “2/31/2015”; LocalDate ld = LocalDate.parse(dateString, dtf); 它成功解析但自动更正到2015-02-28 。 我不希望这种行为,我希望它在日期不是有效的日历日期时仍然抛出exception。 是否有可以为此设置的内置选项,或者我是否真的必须尝试手动筛选出这些实例?

从Java中的查询字符串中提取参数及其值

所以我想假设我有一个字符串 “param1=value1&param2={“url”:”http://somesite.com?someparam=somevalue&someparam1=somevalue1″}&param3=value3″ 我需要它: param1: value1 param2: {“url”:”http://somesite.com?someparam=somevalue&someparam1=somevalue1″} param3: value3 在Java中解析这个问题的最佳方法是什么? 到目前为止,我找不到标准Java库的解决方案,我不想重新发明轮子。 我已经尝试过了(但如果我只在那里放置查询参数,那就不行了): String url = “http://www.example.com/something.html?one=11111&two=22222&three=33333”; List params = URLEncodedUtils.parse(new URI(url), “UTF-8″); for (NameValuePair param : params) { System.out.println(param.getName() + ” : ” + param.getValue()); }

使用GSON将JSON解析为POJO

我的JSON看起来如下: “message_defaults”: { “LabResultsRequestDefaultMessage”: { “MsgTypeId”: 8, “StaffId”: 122, “StaffName”: “Willis,Sam”, “FirstName”: “Sam”, “MI”: “D”, “LastName”: “Willis”, “DefaultMessage”: “Lab Department” }, “ReferralRequestDefaultMessage”: { “MsgTypeId”: 6, “StaffId”: 122, “StaffName”: “Willis,Sam”, “FirstName”: “Sam”, “MI”: “D”, “LastName”: “Willis”, “DefaultMessage”: “Physican” }, “MessageComposeDefaultMessage”: { “MsgTypeId”: 1, “StaffId”: 122, “StaffName”: “Willis,Sam”, “FirstName”: “Sam”, “MI”: “D”, “LastName”: “Willis”, “DefaultMessage”: “Office Manager/Willis […]

我们可以使用ANTLR定义非上下文语法吗?

我对ANTLR4很新,现在我正在尝试用它来定义哪种语法。 据我所知,ANTLR中有两种规则: 解析器规则 (小写单词)和词法分析器规则 (大写单词)。 例: grammar Test; init: prog(‘,’prog)*; prog: A | prog ; A: [az]+; 从语法生成规则的立场出发,我会说解析器规则是NON-TERMINAL符号,可以用词法分析器规则定义的一系列令牌代替。 因此,很明显,语法在定义中没有上下文。 语法生成的语言的alpahbet包含由小写拉丁字母组成的所有单词。 问题:我们可以使用ANTLR4定义非上下文语法吗?

使用JSON的Jersey RESTfull服务

我想将JSON-Post中的值解析为Java-Variables。 但他们总是空着的! JSON-post: {“algID”:0,”vertices”:[1,2,3]} 我尝试将其解析为Java-Variables: @POST @Consumes(MediaType.APPLICATION_JSON) @Path(“getCloseness_vertices”) public String getCloseness_vertices( @FormParam(“algID”) int algID, @FormParam(“vertices”) IntArray vertices) 如果我这样尝试: public String getCloseness_vertices(int algID) Tomcat说: 用于Java类int的消息体读取器,Java类型int和MIME媒体类型application / json; charset =未找到UTF-8。 任何帮助都会很好,我只是不明白。

JSON Array to Java对象

我需要解析一个看起来像这样的json文件: [ { “y”: 148, “x”: 155 }, { “y”: 135, “x”: 148 }, { “y”: 148, “x”: 154 } ] 我想将这些X坐标和Y坐标放入JavaObject Click中,该类如下所示: public class Click { int x; int y; public Click(int x, int y) { this.x = x; this.y = y; } public int getX() { return x; } public void setX(int x) […]