我将我的uri存储在ArrayList<Uri> imageUri = new ArrayList<Uri>();
如何将它们转换为字符串?我打算将它们存储在sqlite数据库中。
更新
ListView listView;
ArrayList<Uri> imageUri = new ArrayList<Uri>();
ArrayAdapter<Uri> arrayAdapter;
arrayAdapter = new ArrayAdapter<Uri>(getActivity(), android.R.layout.simple_list_item_1, imageUri);
listView = (ListView) view.findViewById(R.id.listView1);
listView.setAdapter(arrayAdapter);
if (!imageUri.isEmpty()) {
Uri uri0 = imageUri.get(0);
String uri_0 = uri0.toString();
}
这样做是对的吗?将uri_0存储在sqlite数据库中。这样我会得到每个指数的每个uri?
答案 0 :(得分:1)
你可以使用一个简单的for-each循环。
for (Uri uri: imageUri) {
String uriString = uri.toString();
// do whatever you want with your string
}
将它们全部放在一个字符串中。
String completeString = new String();
for (Uri uri: imageUri) {
completeString += uri.toString();
}
// now you can put that String in your db or whatever you want to do with it..
答案 1 :(得分:0)
我只是在你的URI对象上调用toString()
方法,它将返回URI的字符串表示。之后,您只需要遍历ArrayList
并调用该方法,并使用返回的值执行任何操作。
答案 2 :(得分:0)
最简单,最干净的方法(自j8起)可能正在使用lambdas:
List<String> targetList = new ArrayList<String>();
imageUri.forEach(uri -> targetList.add(uri.toString()));