Video: Learn Python - Full Course for Beginners [Tutorial] 2024
Banyak program Java membaca aksara dari papan kekunci komputer. Program-program ini menggunakan perkara-perkara seperti Pengimbas, Sistem. dalam, dan seterusnyaDouble - perkara yang ditakrifkan dalam API Java. Program DoPayroll dalam penyenaraian ini meletakkan putaran baru pada kisah ini. Daripada membaca aksara dari papan kekunci, program membaca aksara dari EmployeeInfo. fail txt. Fail ini tinggal di pemacu keras komputer anda.
java import. util. Pengimbas; import java. io. Fail; import java. io. IOException; public class DoPayroll {public static void main (String args []) melemparkan IOException {Scanner diskScanner = Scanner baru (File baru ("EmployeeInfo txt")); untuk (int empNum = 1; empNum <= 3; empNum ++) {payOneEmployee (diskScanner);} diskScanner. close ();} statoid void payOneEmployee (Pengimbas aScanner) {Employee anEmployee = Employee baru (); seorang pekerja. setName (aScanner. nextLine ()); seorang pekerja. setJobTitle (aScanner. nextLine ()); seorang pekerja. cutCheck (aScanner. nextDouble ()); aScanner. nextLine ();}}
Untuk membaca aksara dari fail, anda menggunakan beberapa perkara yang sama yang membantu anda membaca aksara dari papan kekunci. Anda menggunakan Pengimbas, nextDouble, dan barang lain. Tetapi sebagai tambahan kepada barang-barang ini, anda mempunyai beberapa halangan tambahan untuk melompat. Berikut adalah senarai:
-
Anda memerlukan objek Fail baru . Untuk lebih tepat, anda memerlukan contoh baru dari kelas Fail API. Anda mendapat contoh baru ini dengan kod seperti
Fail baru ("EmployeeInfo.txt")
Barang dalam tanda petikan ialah nama fail - fail pada hard drive komputer anda. Fail mengandungi aksara.
Pada ketika ini, terminologi menjadikan gunung keluar dari kilang-kilang. Tentulah, frasa baharu Fail objek dan Fail baru contoh muncul , tetapi semua yang anda lakukan adalah membuat Fail baru ("EmployeeInfo.txt" fail pada cakera keras anda. Selepas anda membuang Fail baru ("EmployeeInfo.txt") ke Pengimbas baru,
Scanner diskScanner = Pengimbas baru (Fail baru ("EmployeeInfo txt"));
anda boleh melupakan semua perniagaan Fail baru. Dari titik itu dalam kod, diskScanner bermaksud EmployeeInfo. txt nama fail pada cakera keras komputer anda. (Nama diskScanner bermaksud fail pada cakera keras anda sama seperti, dalam contoh sebelumnya, keyboard nama bermaksud butang yang anda tekan day-in dan day-out.)
Mencipta objek Fail baru dalam penyenaraian adalah seperti membuat objek Pekerja baru kemudian dalam penyenaraian yang sama. Satu-satunya perbezaan ialah kelas Kakitangan dan Akaun ditakrifkan dalam contoh buku ini.Kelas Fail ditakrifkan dalam API Java.
Apabila anda menyambung ke fail cakera dengan Pengimbas baru, jangan lupa bahagian Fail baru. Jika anda menulis Pengimbas baru ("EmployeeInfo.txt") tanpa Fail baru, pengkompil tidak akan keberatan. (Anda tidak akan mendapat apa-apa amaran atau mesej ralat sebelum anda menjalankan kod.) Tetapi apabila anda menjalankan kod tersebut, anda tidak akan mendapat apa-apa seperti hasil yang anda harapkan.
-
Anda mesti merujuk kepada kelas Fail dengan nama penuhnya - java. io. Fail . Anda boleh melakukan ini dengan pengisytiharan import seperti yang ada dalam penyenaraian. Sebagai alternatif, anda boleh mengacaukan kod anda dengan pernyataan seperti
Scanner diskScanner = Pengimbas baru (baru java.oo. Fail ("EmployeeInfo. Txt"));
-
Anda memerlukan melemparkan klausa IOException . Banyak perkara boleh menjadi salah apabila program anda dihubungkan ke EmployeeInfo. txt. Untuk satu perkara, cakera keras anda mungkin tidak mempunyai file bernama EmployeeInfo. txt.
-
Untuk yang lain, file EmployeeInfo. txt mungkin berada dalam direktori yang salah. Untuk menggunakan bencana seperti ini, bahasa pengaturcaraan Jawa mengambil langkah berjaga-jaga tertentu. Bahasa tersebut menegaskan bahawa apabila fail cakera terlibat, anda mengakui bahaya yang mungkin memanggil Pengimbas baru.
Anda boleh mengakui bahaya dalam beberapa cara yang mungkin, tetapi cara yang paling mudah adalah menggunakan klausa lontaran. Dalam penyenaraian, tajuk kaedah utama berakhir dengan perkataan melemparkan IOException. Dengan menambah kedua-dua perkataan ini, anda menghiburkan pengompilasi Java.
Ia seolah-olah anda berkata "Saya tahu bahawa memanggil Pengimbas baru boleh membawa kepada masalah. Anda tidak perlu mengingatkan saya. "Dan, cukup pasti, menambah lontaran IOException kepada kaedah utama anda memastikan pengkompil dari mengeluh. (Tanpa klausa ini, anda mendapat mesej ralat pengecualian yang tidak dilaporkan.)