Java 字符串资源返回一个数字?

Java 字符串资源返回一个数字?,java,android,string,android-resources,Java,Android,String,Android Resources,在我的android项目中,res/文件夹中有一个字符串资源(string.xml) 在该string.xml中,我创建了几个字符串,如: <string name="my_server">http://12.34.56.78</string> <string name="my_port">1234</string> 但我的输出是: 我的服务器和端口是:21301099700:21301099702 我的绳子在哪里?这似乎是那个字符串的地址?更改

在我的android项目中,res/文件夹中有一个字符串资源(string.xml)

在该string.xml中,我创建了几个字符串,如:

<string name="my_server">http://12.34.56.78</string>
<string name="my_port">1234</string>
但我的输出是:

我的服务器和端口是:21301099700:21301099702

我的绳子在哪里?这似乎是那个字符串的地址?

更改:

<string name="my_server">http://12.34.56.78</string>
...

String url = R.strings.my_server + ":" + R.strings.my_port;
http://12.34.56.78
...
字符串url=R.strings.my_服务器+”:“+R.strings.my_端口;

http:\/\/12.34.56.78
...
stringurl=getString(R.strings.my_服务器)+“:”+getString(R.strings.my_端口);
您需要转义
my_server
字符串,并使用该方法检索
字符串

更改:

<string name="my_server">http://12.34.56.78</string>
...

String url = R.strings.my_server + ":" + R.strings.my_port;
http://12.34.56.78
...
字符串url=R.strings.my_服务器+”:“+R.strings.my_端口;

http:\/\/12.34.56.78
...
stringurl=getString(R.strings.my_服务器)+“:”+getString(R.strings.my_端口);

您需要转义
my_server
字符串,并使用该方法检索
字符串

您可以获得字符串资源的字符串值,例如:

String yourString = context.getResources().getString(R.string.my_port);
其中
context
是您活动的上下文

或者,如果您导入
导入android.content.res.Resources
,则执行类似操作:

String yourString = Resources.getSystem().getString(R.string.my_port);

您可以获取字符串资源的字符串值,例如:

String yourString = context.getResources().getString(R.string.my_port);
其中
context
是您活动的上下文

或者,如果您导入
导入android.content.res.Resources
,则执行类似操作:

String yourString = Resources.getSystem().getString(R.string.my_port);

看起来您实际上引用的是R文件中的Id,而不是与之相关的值

您需要这样做才能获取字符串:

getResources().getString(R.string.my_server)

根据规则,您不需要转义“/”。

看起来您实际上引用的是R文件中的Id,而不是与之相关的值

您需要这样做才能获取字符串:

getResources().getString(R.string.my_server)

根据,您不需要转义“/”。

R.string将以
整数的形式返回该特定字符串的
id

要获取实际字符串,您将使用
getResources().getString(R.string.your_string)

因此,您的
url
字符串如下

String url = getResources().getString(R.strings.my_server) + ":" + getResources().getString(R.strings.my_port);

R.string将以
整数的形式返回该特定字符串的
id

要获取实际字符串,您将使用
getResources().getString(R.string.your_string)

因此,您的
url
字符串如下

String url = getResources().getString(R.strings.my_server) + ":" + getResources().getString(R.strings.my_port);

只需添加您需要使用
context
getString
方法:

context.getString(R.id.your_string_name)
例如,在我的适配器类中,我将上下文定义为

private Context mContext;
然后我在警报对话框的消息部分使用它作为

...

.setMesasge(mContext.getString(R.string.my_string_name))

...

只需添加您需要使用
context
getString
方法:

context.getString(R.id.your_string_name)
例如,在我的适配器类中,我将上下文定义为

private Context mContext;
然后我在警报对话框的消息部分使用它作为

...

.setMesasge(mContext.getString(R.string.my_string_name))

...

不,当我的服务器没有端口时:String url=R.strings.my_server;//Android studio抱怨:required String,found int。提供使用String.valueOf()log4j:WARN无法为记录器(com.example.json.JacksonRequest)找到追加器。log4j:警告请正确初始化log4j系统。log4j:WARN See了解更多信息。我发现此错误与您正在使用的Jackson解析器有关,而不是与此有关。不,当服务器没有端口时:String url=R.strings.my_server;//Android studio抱怨:required String,found int。提供使用String.valueOf()log4j:WARN无法为记录器(com.example.json.JacksonRequest)找到追加器。log4j:警告请正确初始化log4j系统。log4j:WARN See以获取更多信息。我发现此错误与您正在使用的Jackson解析器有关,而不是此错误。可能重复的可能重复的可能重复的可能重复的我获得了一个android.content.res.Resources$NotFoundException:unknown resource 21301099700我获得了一个android.content.res.Resources$NotFoundException:unknown resource 21301099700