小编wit*_*ich的帖子

将符合ISO 8601的字符串转换为java.util.Date

我试图将ISO 8601格式的字符串转换为java.util.Date.

yyyy-MM-dd'T'HH:mm:ssZ如果与Locale(比较样本)一起使用,我发现该模式符合ISO8601标准.

但是,使用java.text.SimpleDateFormat,我无法转换格式正确的String 2010-01-01T12:00:00+01:00.我必须先将它转换为2010-01-01T12:00:00+0100没有冒号的.

那么,目前的解决方案是

SimpleDateFormat ISO8601DATEFORMAT = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.GERMANY);
String date = "2010-01-01T12:00:00+01:00".replaceAll("\\+0([0-9]){1}\\:00", "+0$100");
System.out.println(ISO8601DATEFORMAT.parse(date));
Run Code Online (Sandbox Code Playgroud)

这显然不是那么好.我错过了什么或者有更好的解决方案吗?


回答

感谢JuanZe的评论,我发现了Joda-Time魔术,这里也有描述.

所以,解决方案是

DateTimeFormatter parser2 = ISODateTimeFormat.dateTimeNoMillis();
String jtdate = "2010-01-01T12:00:00+01:00";
System.out.println(parser2.parseDateTime(jtdate));
Run Code Online (Sandbox Code Playgroud)

或者更简单地说,通过构造函数使用默认解析器:

DateTime dt = new DateTime( "2010-01-01T12:00:00+01:00" ) ;
Run Code Online (Sandbox Code Playgroud)

对我来说,这很好.

java date iso8601

627
推荐指数
19
解决办法
55万
查看次数

如何在messages.properties文件中使用参数?

这个问题中,它指出,有可能有类似的东西:

message.myMessage = This message is for {0} in {1}
Run Code Online (Sandbox Code Playgroud)

但我不知道如何将参数传递给它

MESSAGES.getString("message.myMessage", "foor", "bar")
Run Code Online (Sandbox Code Playgroud)

但不幸的是getString无法知道拿其他参数有什么想法吗?

java

18
推荐指数
2
解决办法
5万
查看次数

如何检查MySQL表是否为UTF-8并具有storageEngine InnoDB?

谷歌搜索只是找到从一种格式更改为另一种格式的说明,但我似乎无法确定如何确定我先拥有哪些格式.

我怎么能够:

  1. 检查表格的字符编码是什么?
  2. 检查表使用的存储引擎是什么?
  3. 检查所有表是否都是特定编码?
  4. 检查所有表是否都有某个存储引擎?

mysql innodb utf-8 storage-engines

16
推荐指数
1
解决办法
2万
查看次数

无法存档应用

我想创建.ipa文件.在分发应用程序时,据说我应该首先归档我的应用程序.然后选择Product > Archive.

但这个选项是灰色的.为什么?

xcode ios

16
推荐指数
1
解决办法
5470
查看次数

Netbeans:项目的主要工件通过maven-shade-plugin处理

我正在构建我的项目,maven-shade-pluginNetbeans 8.0抱怨以下警告:

Project的主要工件通过maven-shade-plugin处理

当最终工件jar包含不是源自当前项目的类时,NetBeans内部编译器不能使用项目源进行编译.然后,在重新编译项目时,项目源代码中所做的更改仅出现在依赖项目中.也适用于重构等功能,这些功能无法在依赖项目中找到用法.

我怎样才能解决这个问题?它能破坏什么?

java netbeans maven maven-shade-plugin

13
推荐指数
2
解决办法
4151
查看次数

Groovysh中退出的未知属性错误

当我在Groovysh命令提示符下给出exit命令时,我收到以下错误.其他命令工作正常.

Groovy Shell (2.3.6, JVM: 1.8.0_25)
...
groovy:000> exit
Unknown property: exit
groovy:000>
Run Code Online (Sandbox Code Playgroud)

我尝试用Ctrl+ D,它也工作正常.

groovy

11
推荐指数
1
解决办法
1295
查看次数

谷歌地图.InfoWindow设置高度和宽度

你如何设置谷歌地图的大小和宽度InfoWindow?我查看了api页面,发现了一种maxWidth方法.

编辑:我尝试了一些事情.到目前为止,这些都不起作用:

    var markerInfoWindow = new google.maps.InfoWindow({
        content: markerHTMLString,
        maxHeight: 400,  //Doesn't work
        maxWidth: 400,   //Doesn't work
        width: 300,      //Doesn't work
        height: 300      //Doesn't work
    });
Run Code Online (Sandbox Code Playgroud)

也说markerHTMLString等于这个:

<div class = "MarkerPopUp"><div class = "MarkerContext">Text</div></div>
Run Code Online (Sandbox Code Playgroud)

我也试过这三个选项(没有一个工作)

  1. .MarkerPopUp {
        height: 300px;
        width: 300px;
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. .MarkerPopUp {
        height: 300px;
        width: 300px;
    }
    
    .MarkerContext {
        height: 300px;
        width: 300px;
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. .MarkerContext {
        height: 300px;
        width: 300px;
    }
    
    Run Code Online (Sandbox Code Playgroud)

这也行不通:

document.getElementById('MarkerPopUp')parentNode.style.overflow = '';
Run Code Online (Sandbox Code Playgroud)

或这个

document.getElementById('MarkerPopUp').parentNode.parentNode.style.overflow = ''; …
Run Code Online (Sandbox Code Playgroud)

javascript css google-maps google-maps-markers

10
推荐指数
1
解决办法
4万
查看次数

pycharm调试器没有连接:KeyboardInterrupt

不知怎的,我的pycharm调试器不再连接了.

我测试了所有ENV.另外,在stackoverflow上读取它:我删除了.idea目录.

但是,重新启动pycharm后,始终会重新创建 .idea (删除缓存,甚至删除&downlaoded pycharm)

**/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6 "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydevd.py" --multiproc --qt-support --client 127.0.0.1 --port 52281 --file /Users/franzi/Desktop/i18n/qordoba-cli/qordoba/cli.py i18n-find --traceback
warning: Debugger speedups using cython not found. Run '"/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6" "/Applications/PyCharm CE.app/Contents/helpers/pydev/setup_cython.py" build_ext --inplace' to build.
pydev debugger: process 96448 is connecting

Connected to pydev debugger (build 171.4694.67)
Could not connect to 127.0.0.1: 52282
Traceback (most recent call last):
  File "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydevd.py", line 1583, in <module>
    debugger.connect(host, port)
  File "/Applications/PyCharm CE.app/Contents/helpers/pydev/pydevd.py", line 324, in connect …
Run Code Online (Sandbox Code Playgroud)

python debugging connection pycharm

7
推荐指数
1
解决办法
4269
查看次数

如何恢复netbeans默认行为?

我想我不小心覆盖了netbeans编辑器中的一个默认设置(Windows 7上的7.2),一个漂亮的功能已经消失.

现在实现了支架完成功能.

我是Netbeans的新手.我以前打字的时候

"

Netbeans用于放置匹配"并将光标放在第一个引号后面

" //这里"表示光标

所以当我在那里看到光标时,我只是输入...当我完成输入时,我曾经只能按下回车键(当光标仍然在结束报价内时)和netbeans用于自动放入半 - 该行末尾的列(在结束报价之后)并将我推进到下一行 - 非常好.但是现在,输入完全创建了一条新线,将结束报价也推到了下一行.显然,没有更多的半列.

所以我现在最终得到这个

"

输入过去常常给我这个;

"

我想知道出了什么问题,在哪里.现在我必须按右箭头到达结束报价的右侧并手动放置一个半列然后按回车键.

你如何带回默认设置?你在这样的情况下做什么?

运行Windows 7.和netbeans 7.2.1

谢谢

php netbeans

6
推荐指数
1
解决办法
4955
查看次数

期望 - 中断程序 - Ctrl + C.

我正在运行以下脚本以在远程服务器上启动捕获并随后下载该文件.目前我必须用Ctrl+ 暂停它C并手动退出.

如何替换交互并定义触发器以终止tcpdump或捕获Ctrl+ C并将其传递到远程服务器中?

spawn ssh "$user_ssh\@$ssh_server"

expect {
        "*password"     { send "$pass\n";   exp_continue}
        "root\@*"       { }
        timeout  { puts "time out expecting password or bash"; exit 1 }
    }

send "sudo tcpdump -i $intf -s0 -w $file -v\n";
interact

spawn scp "$user_ssh\@$ssh_server:$file" .

expect "password:"
send "$pass_ssh\n";
expect "100\%"
Run Code Online (Sandbox Code Playgroud)

linux ssh scripting tcl expect

6
推荐指数
1
解决办法
1万
查看次数