小编Yog*_*esh的帖子

错误:在maven编译期间编码UTF8的不可映射字符

我正在使用maven编译一个包,它表示构建失败并出现以下编译错误:

SpanishTest.java [31,81]用于编码UTF8的不可映射的字符

我在线搜索,对于很多人来说,将源代码从UTF-8改为ISO-8859-1似乎可以工作,但我仍然得到相同的编译错误.我使用的是32位Ubuntu.以下是该标记在我的pom.xml中的显示方式

<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>
Run Code Online (Sandbox Code Playgroud)

即使我将<project.build.outputEncoding>标签更改为ISO-8859-1,我仍然会收到错误.可能是因为java版本?我的系统上安装了sun-sun和openjdk.

任何人都可以让我知道该怎么做.

谢谢

java character-encoding maven

55
推荐指数
5
解决办法
12万
查看次数

正则表达式,用于删除JSTL标记中的特殊字符

我正在开发一个Spring应用程序,在JSPX页面中,我需要从属性页面动态加载一些值,并使用options标签将它们设置为下拉列表.我需要使用相同的文本作为选项值和显示但是对于选项值,我需要删除所有特殊字符.

例如,如果价值是母亲叔叔,那么我需要

<option value="MaternalUncle">Maternal Uncle</option>
Run Code Online (Sandbox Code Playgroud)

我得到的是

<option value="Maternal Uncle">Maternal Uncle</option>
Run Code Online (Sandbox Code Playgroud)

有2个应用程序可以使用该页面,并且要加载的属性文件取决于应用程序.如果我为app 1加载值,那么值会正确显示,app1中的最后一个值是'Others',并且没有任何特殊字符.对于app 2,它不会修剪最后一个值为'Maternal Uncle'的空格.代码中的repOptions是ArrayList,其值从属性文件加载.这是我的代码:

<select name="person" id="person">
      <option value="na">Select the relationship</option>
  <c:forEach items="${repOptions}" var="repOption">
       <option value="${fn:replace(repOption, '[^A-Za-z]','')}">${repOption}</option>
  </c:forEach>
</select>
Run Code Online (Sandbox Code Playgroud)

第一个应用程序删除空格,因为此值在列表9中为第4个.对于app2,这是最后一个值,正则表达式不起作用.如果我把Maternal Uncle作为app2的第一个属性,那么这个工作正常,但要求是最后一个选项.

 <option value="${fn:replace(repOption, ' ','')}">
Run Code Online (Sandbox Code Playgroud)

正在为空白工作,但可能有像兄弟/姐妹这样的值,所以我需要删除/也,因此我正在使用正则表达式.

regex jsp replace jstl

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

Android:使用intent setResults来回传递数据

我正在为Android创建一个基于GPS的应用程序,主要和LocNames有2个活动.Main显示我的地图和LocNames是获取用户想要的源和目的地.我想在用户从菜单中选择LocNames时启动LocNames,用户在框中输入名称,我希望将结果发送回Main.但我这样做会有例外.

以下是我的Main调用LocNames的方式:

    public boolean onOptionsItemSelected(MenuItem item) 
{
    switch (item.getItemId()) 
    {
        case R.id.showMyLocation:
            showCurrentLocation();
            break;
        case R.id.showRoute:
            Intent getLocationsIntent = new Intent(Main.this, LocNames.class);
            startActivityForResult(getLocationsIntent, 1);
            break;
    }
Run Code Online (Sandbox Code Playgroud)

以下是我尝试在LocNames的onClick中设置结果的方法:

public void onClick(View v) 
{
    // TODO Auto-generated method stub
    source = sourceText.getText().toString();
    destination = destinationText.getText().toString();     
    Intent result = new Intent(LocNames.this, Main.class);
    result.putExtra("src", source);
    result.putExtra("dest", destination);
    setResult(RESULT_OK, result);
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用LocNames返回的结果时,我的应用程序崩溃了

protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
 if(requestCode == 1 && resultCode == RESULT_OK)
    {
        source = data.getStringExtra("src");
        destination = data.getStringExtra("destination"); …
Run Code Online (Sandbox Code Playgroud)

android android-intent

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

来自位置/地点的Android locationoint

我已经看过许多从Geocoder获取位置名称然后通过getFromLocation()获取地址的示例,但是如何通过名称获取geoPoint作为位置.用户输入城市名称,然后将其转换为地理位置并在地图上显示.在Android或谷歌API中有没有办法.

我不是指当前的位置,而是指任何位置给它的名字.基本上我希望它允许用户获取远程城市的天气更新.我可以通过获取当前位置来获取当前位置.

android google-maps geocoding geolocation

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