Beberapa hari yang lalu, saudara perempuan saya tiba-tiba mengatakan kepada saya bahwa dia membeli e-book di JD. Setelah membelinya, dia menemukan bahwa dia hanya bisa membacanya secara online atau menggunakan pembacanya sendiri. Itu sangat tidak nyaman, jadi saya meminta saya untuk memikirkan solusi.
Saya mulai memikirkannya. Pada awalnya, saya langsung menggunakan Acrobat Reader untuk membukanya dan menemukan bahwa hanya ada direktori, tidak ada yang lain, dan semua halaman ada. Saya pikir topeng mungkin ditambahkan ke konten yang benar. Orang yang hanya dapat menggunakan "kunci" dapat memfilternya. Untuk memecahkan editor orang lain, itu pasti tidak akan bekerja dalam waktu singkat. Banyak orang di internet juga berpikir menggunakan skrip otomatis untuk secara otomatis mengambil tangkapan layar pembaca resmi, tetapi saya menemukan bahwa tangkapan layar bukan halaman demi halaman, yang sangat bingung. Akhirnya, saya hanya dapat menemukan cara dengan membaca baris ini secara online.
Metode ini mirip dengan netizen. Ini disimpan sebagai gambar, dan bagaimana membuatnya menjadi PDF melalui alat PDF.
Saya terkejut menemukan bahwa dokumen itu benar -benar bagus, dengan satu gambar per halaman, itu telah dilakukan untuk Anda, tetapi hanya beberapa gambar pertama dan terakhir dari halaman saat ini yang akan diperbarui pada satu waktu, dan yang lainnya akan dihapus. Pada titik ini, ada cara berpikir:
Langkah 1 hingga 3 perlu diulang dan dapat diimplementasikan menggunakan alat dan skrip otomatis.
Langkah 4 Cukup tulis controller, hanya antarmuka Java paling sederhana.
Langkah 5: Layanan online langsung dapat dicapai.
Mengapa kita perlu menyimpan unduhan terlebih dahulu? Ini melibatkan masalah efisiensi, deduplikasi gambar dan pemfilteran, karena gambar yang diperoleh setelah setiap penyesuaian dapat digandakan, dan reduplikasi akan secara otomatis didediklikasi; Ini juga untuk menghindari masalah seperti keluar abnormal di tengah unduhan sambil mendapatkan jalur gambar dan tugas -tugas lain yang tidak dapat dieksekusi secara normal. Kemudian skrip mendapatkan jalur dan menyimpannya ke server Anda sendiri. Satu-satunya masalah mungkin masalah silang domain. Akibatnya, saya menemukan bahwa masih ada beberapa gambar yang hilang, yang membuat saya menyadari manfaat menggunakan cache. Saya dapat secara langsung memverifikasi bahwa gambar -gambar itu hilang melalui kode tanpa memeriksa file JPG, jumlah file dengan lebih sedikit digit tunggal, dan akhirnya diselesaikan secara manual.
Satu -satunya cacat dalam gambar yang diperoleh dengan cara ini adalah bahwa mereka memiliki kata -kata "JD Reading" dan resolusi gambarnya tidak terlalu tinggi, dan font tampaknya memiliki beberapa berbulu. Jika Anda memiliki gangguan obsesif-kompulsif atau mengejar kualitas tinggi, gunakan pembaca resmi. Saya pribadi membacanya dengan jelas, ini adalah dokumen, bukan gambar! Lai Lai
Berikut ini adalah kode untuk menyimpan data jaringan ke area lokal melalui URL.
kelas publik httpUrlConnectionutil {// stream data untuk mendapatkan data respons pembaca melalui get permintaan inputStream statis public getInputStreamByget (string url) {try {httpurlConnection conn = (httpurlConnection) URL baru (url) .openconnection (); Conn.setreadtimeout (5000); Conn.SetConnectTimeout (5000); Conn.setRequestMethod ("Get"); if (conn.getResponsecode () == httpUrlConnection.http_ok) {inputStream inputStream = conn.getInputStream (); mengembalikan inputstream; }} catch (ioException e) {E.PrintStackTrace (); } return null;} // Simpan respons data server ke file lokal public static void saveData (inputStream IS, file file) {try (bufferedInputStream bis = new bufferedInputStream (is); bufferedOutputStream bos = BufferedOutputStream (FileOutputStream new (file);); int len = -1; while ((len = bis.read (buffer))! = -1) {bos.write (buffer, 0, len); bos.flush (); }} catch (ioException e) {E.PrintStackTrace (); }}}Ditelepon:
Set <string> imGnumber = (set <string>) redistemplate.opsforhash (). Keys (MAP_KEY); imGnumber.stream (). Foreach (e-> {string url = (string) redistemplate.opsforhash (). Get (peta_key, e); string fileName nama = e+". nama file);Meringkaskan
Di atas adalah contoh kode yang diperkenalkan editor kepada Anda tentang Java membaca data jarak jauh melalui URL dan menjaganya secara lokal. Saya harap ini akan membantu semua orang. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas semua orang tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!