Java和Python读取文件总结

public static ArrayList<String> readTxtFile() {
		String fileName = JavaFile.class.getClassLoader().getResource("filename/list.txt").getPath();
		ArrayList<String> arrayList = new ArrayList<>();
		try {
			File jsonFile = new File(fileName);
			FileReader fileReader = new FileReader(jsonFile);
			//Reader reader = new InputStreamReader(new FileInputStream(jsonFile), "utf-8");
			BufferedReader bf = new BufferedReader(fileReader);
			int ch = 0;
			StringBuffer sb = new StringBuffer();
			String str;
			while ((str = bf.readLine()) != null) {
                arrayList.add(str);
            }
			fileReader.close();
			bf.close();
		} catch (IOException e) {
			e.printStackTrace();
			return null;
		}
		return arrayList;
		
		
	}

// 读取json文件
	public static String readJsonFile(String fileName) {
		String jsonStr = "";
		try {
			File jsonFile = new File(fileName);
			FileReader fileReader = new FileReader(jsonFile);
			Reader reader = new InputStreamReader(new FileInputStream(jsonFile), "utf-8");
			int ch = 0;
			StringBuffer sb = new StringBuffer();
			while ((ch = reader.read()) != -1) {
				sb.append((char) ch);
			}
			fileReader.close();
			reader.close();
			jsonStr = sb.toString();
			return jsonStr;
		} catch (IOException e) {
			e.printStackTrace();
			return null;
		}
	}

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.ouyanglol.neo4j.vo.EventMessage;
public static List<Object> readSysJsonFile() {
		List<Object> eventList = new ArrayList<>();
		String path = JavaUtils.class.getClassLoader().getResource("file/dict.json").getPath();
		String s = readJsonFile(path);
		//JSONArray jsonArray = JSONArray.parseArray(s);
		JSONObject jsonObject = JSON.parseObject(s);
		Map<String,Object> parMap =  JSONObject.parseObject(jsonObject.toJSONString(), new TypeReference<Map<String, Object>>(){});

		for (Map.Entry<String,Object> map: parMap.entrySet()) {
			String key = map.getKey();
			Map obj = (Map)map.getValue();
			
			list.add(message);
		}
		return list;
	}


Python存储Json列表文件
def write_to_file(file_path, data_list):
    with open(file_path, 'w', encoding='utf-8') as f:
        for data in data_list:
            c_data = json.dumps(data,ensure_ascii=False) #重点在此句
            s = str(c_data) + "\n"
            f.write(s)

Python读取Json列表文件
 event_path = "../result/test_data.txt"
 with open(event_path, "r", encoding="utf-8") as f:
      dataList = f.readlines()
      count = 0
      event_all =defaultdict(dict)
      for data in dataList:
         data_list = json.loads(data)#重点在此
         data_list = data_list[0]  #重点
         data_dict = json.loads(data_list) #重点
         print(data_dict)
         if isinstance(data_dict, dict):
             if len(data_dict) != 5:
                print('field ERROR!')
                continue
         else:
            continue

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaPython本身并没有文件包含漏洞,但在使用这两种语言开发的应用程序中,可能存在文件包含漏洞。文件包含漏洞是一种常见的安全漏洞,它可以允许攻击者通过构造恶意请求来读取、执行或包含应用程序中的任意文件。 在Java中,如果应用程序使用不安全的文件包含函数(如`FileReader`、`FileInputStream`等),并且未对用户提供的输入进行适当过滤和验证,就可能导致文件包含漏洞。攻击者可以通过提供恶意的文件路径或文件名来读取系统上的敏感文件,甚至执行恶意代码。 在Python中,如果应用程序使用类似`open`、`os.system`等函数,并且未正确验证和过滤用户提供的输入,也可能存在文件包含漏洞。攻击者可以通过构造恶意请求来读取或执行任意文件。 为了防止文件包含漏洞,开发者应该遵循安全编码实践,包括: - 对用户输入进行适当的验证和过滤,确保只允许访问应用程序所需的文件。 - 使用安全的文件操作函数,并避免使用不安全的函数或直接拼接用户提供的路径。 - 设置合适的访问权限,限制应用程序可以访问的文件和目录。 - 定期更新和维护应用程序的依赖库,以确保使用的库没有已知的安全漏洞。 总的来说,文件包含漏洞不是由语言本身引起的,而是由开发者在编写代码时的安全考虑不足所导致的。因此,开发者应该始终关注应用程序的安全性,并采取适当的措施来防止文件包含漏洞的出现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值