Terdapat sedikit keraguan tentang bagaimana penapis servlet di Java menyelesaikan masalah aksara Cina yang kacau-bilau Adakah perlu menggunakan entrySet traversal di sini?
習慣沉默
習慣沉默 2017-05-27 17:41:44
0
2
995

Kod penapis untuk menyelesaikan masalah aksara Cina bercelaru yang terdapat di Internet mempunyai perenggan yang serupa dengan yang berikut:

Map map = request.getParameterMap();//获取有乱码的map if(isNotEncode){//只能在第一次解决乱码 for(Map.Entry entry : map.entrySet()){//遍历map,解决所有值的乱码 String [] vs = entry.getValue(); for(int i=0;i

Di sini kami hanya mengubah suai set nilai dalam peta Set nilai ini ialah koleksi tatasusunan String. Saya rasa tidak perlu mengeluarkan entriSet dan melintasinya Anda boleh mencapai kesan yang sama dengan hanya mengeluarkan Nilai dan melintasinya. Saya mengamalkannya sendiri dan mengesahkan sangkaan saya. Tetapi hampir semua maklumat yang saya lihat di Internet merentasi entrySet Mengapa ini? Adakah terdapat sebarang kelemahan dalam hanya merentasi Nilai set nilai? Saya harap pakar dapat menjelaskan kekeliruan!

習慣沉默
習慣沉默

membalas semua (2)
淡淡烟草味

Ini yang anda maksudkan:

for (String[] values : map.values()) { for (int i = 0; i < values.length; i ++) { values[i] = new String(values[i].getBytes(StandardCharsets.ISO_8859_1, encode)); } }

Saya rasa tiada apa-apa yang salah dengannya.

    给我你的怀抱

    Sama sekali tidak perlu, lihat kod sumber SetCharacterEncodingFilter Tomcat

    request.setCharacterEncoding(...)

      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!