|
13 | 13 | import javax.swing.filechooser.FileSystemView; |
14 | 14 | import java.awt.*; |
15 | 15 | import java.awt.event.*; |
16 | | -import java.io.File; |
17 | 16 | import java.io.IOException; |
18 | | -import java.nio.file.Files; |
19 | | -import java.util.ArrayList; |
20 | | -import java.util.EnumMap; |
21 | | -import java.util.Locale; |
22 | | -import java.util.ResourceBundle; |
| 17 | +import java.util.*; |
23 | 18 |
|
24 | 19 | import static ru.ifmo.cs.bcomp.ControlSignal.*; |
25 | 20 | import static ru.ifmo.cs.bcomp.ui.components.DisplayStyles.*; |
@@ -487,22 +482,25 @@ public void cmdLoadProgramm() throws IOException { |
487 | 482 | int returnValue = jfc.showOpenDialog(null); |
488 | 483 | if (returnValue == JFileChooser.APPROVE_OPTION) { |
489 | 484 |
|
490 | | - File file = jfc.getSelectedFile(); |
491 | | - for(String line : Files.readAllLines(file.toPath()) ){ |
492 | | - |
493 | | - line = line.trim(); |
494 | | - if (line.substring(line.length() - 1).equals("a")){ |
495 | | - String addr = line.replaceFirst(".$",""); |
496 | | - |
497 | | - Integer value = Integer.parseInt(addr, 16); |
498 | | - cpu.getRegister(Reg.IR).setValue(value); |
499 | | - cpu.executeSetAddr(); |
500 | | - }else{ |
501 | | - Integer value = Integer.parseInt(line, 16); |
502 | | - cpu.getRegister(Reg.IR).setValue(value); |
503 | | - cpu.executeWrite(); |
| 485 | + Scanner file = new Scanner(jfc.getSelectedFile()); |
| 486 | + while (file.hasNext()) { |
| 487 | + String line = file.nextLine().trim(); |
| 488 | + if(!line.isEmpty()) { |
| 489 | + if (line.substring(line.length() - 1).equals("a")) { |
| 490 | + String addr = line.replaceFirst(".$", ""); |
| 491 | + |
| 492 | + Integer value = Integer.parseInt(addr, 16); |
| 493 | + cpu.getRegister(Reg.IR).setValue(value); |
| 494 | + cpu.executeSetAddr(); |
| 495 | + } else { |
| 496 | + Integer value = Integer.parseInt(line, 16); |
| 497 | + cpu.getRegister(Reg.IR).setValue(value); |
| 498 | + cpu.executeWrite(); |
| 499 | + } |
504 | 500 | } |
505 | 501 | } |
| 502 | + |
| 503 | + file.close(); |
506 | 504 | } |
507 | 505 | } |
508 | 506 |
|
|
0 commit comments