lizhanwei
2020-02-12 6a5fa29439444a5d5bd739554a1aea22473d31b6
测试地图点
3个文件已修改
98 ■■■■■ 已修改文件
app/src/main/java/safeluck/drive/evaluation/bean/ExamMap.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/util/FileUtil.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/src/main/java/safeluck/drive/evaluation/bean/ExamMap.java
@@ -1,8 +1,15 @@
package safeluck.drive.evaluation.bean;
import androidx.annotation.NonNull;
import com.google.gson.JsonArray;
import com.google.gson.annotations.SerializedName;
import org.json.JSONArray;
import java.util.List;
import safeluck.drive.evaluation.util.FileUtil;
/**
 * MyApplication2
@@ -57,5 +64,22 @@
        public void setXy(List<Double> xy) {
            this.xy = xy;
        }
        @Override
        public String toString() {
            return "PointBean{" +
                    "xy=" + FileUtil.ListToString(xy) +
                    '}';
        }
    }
    @Override
    public String toString() {
        return "ExamMap{" +
                "id=" + id +
                ", item=" + item +
                ", point=" + FileUtil.ListToString(point) +
                '}';
    }
}
app/src/main/java/safeluck/drive/evaluation/fragment/MapFragment.java
@@ -465,9 +465,10 @@
                            if (map_id == examMap.getId()){
                                List<ExamMap.PointBean> pointBeanList = examMap.getPoint();
                                MyLog.i(TAG,"map_id="+map_id);
                                for(int j=0; j<pointBeanList.size();j++){
                                    List<Double> xys = pointBeanList.get(i).getXy();
                                    MyLog.i(TAG,FileUtil.ListToString(xys));
                                    if(j==0){
                                        map = new double[xys.size()/2][2];
                                    }else{
app/src/main/java/safeluck/drive/evaluation/util/FileUtil.java
@@ -19,6 +19,10 @@
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.util.List;
import java.util.Map;
import safeluck.drive.evaluation.bean.ExamMap;
public class FileUtil {
    private static final String TAG = "FileUtil";
@@ -165,6 +169,7 @@
     * @param assertfileName
     */
    public static void copyAssertFileToSD(Context context,String assertfileName){
        try {
            InputStream inputStream = null;
            try {
@@ -173,14 +178,16 @@
            } catch (IOException e) {
                e.printStackTrace();
            }
            deleteFile(context.getPackageName()+"/",assertfileName);
            OutputStream outputStream = new FileOutputStream(  new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/"+context.getPackageName(), assertfileName));
            byte[] bytes = new byte[1024];
            while ((inputStream.read(bytes))>0){
                outputStream.write(bytes);
            }
            inputStream.close();
            outputStream.close();
        } catch (IOException e) {
            inputStream.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
@@ -226,4 +233,64 @@
        return out.toByteArray();
    }
    private static final String SEP2 = "|";
    private static final String SEP3 = "=";
    private static final String SEP1 = "#";
    public static String ListToString(List<?> list) {
        StringBuffer sb = new StringBuffer();
        if (list != null && list.size() > 0) {
            for (int i = 0; i < list.size(); i++) {
                if (list.get(i) == null || list.get(i) == "") {
                    continue;
                }
                // 如果值是list类型则调用自己
                if (list.get(i) instanceof List) {
                    sb.append(ListToString((List<?>) list.get(i)));
                    sb.append(SEP1);
                } else if (list.get(i) instanceof Map) {
                    sb.append(MapToString((Map<?, ?>) list.get(i)));
                    sb.append(SEP1);
                } else {
                    sb.append(list.get(i));
                    sb.append(SEP1);
                }
            }
        }
        return "L" + sb.toString();
    }
    /**
     * Map转换String
     *
     * @param map
     *            :需要转换的Map
     * @return String转换后的字符串
     */
    public static String MapToString(Map<?, ?> map) {
        StringBuffer sb = new StringBuffer();
        // 遍历map
        for (Object obj : map.keySet()) {
            if (obj == null) {
                continue;
            }
            Object key = obj;
            Object value = map.get(key);
            if (value instanceof List<?>) {
                sb.append(key.toString() + SEP1 + ListToString((List<?>) value));
                sb.append(SEP2);
            } else if (value instanceof Map<?, ?>) {
                sb.append(key.toString() + SEP1
                        + MapToString((Map<?, ?>) value));
                sb.append(SEP2);
            } else {
                sb.append(key.toString() + SEP3 + value.toString());
                sb.append(SEP2);
            }
        }
        return "M" + sb.toString();
    }
}