#javascript #arrays #algorithm #file-io #split
#javascript #массивы #алгоритм #file-io #разделение
Вопрос:
У меня есть файл, который представляет собой перевод шаблонов азбуки Морзе в алфавит.
Мне нужно разделить этот файл на ключи и значения в двух отдельных массивах.
Я надеюсь, что кто-нибудь сможет показать мне базовый алгоритм, который сгенерирует аналогичный результат, чтобы я мог смоделировать свой код после него.
Как бы я разделил левую часть на свой собственный массив, а также правую часть на свой собственный массив? [1]: https://i.stack.imgur.com/X3i99.png
Ответ №1:
Прочитайте файл, а затем перейдите посимвольно, сравнивая их с массивом, который вы создаете из возможных символов. Создайте два других массива и, если сравнение соответствует одному или другому, поместите символ в правильный массив на основе сравнения.
// Java program to iterate over an array
// using for loop
import java.io.*;
class GFG {
public static void main(String args[]) throws IOException
{
int ar[] = { 1, 2, 3, 4, 5, 6, 7, 8 };
int i, x;
// iterating over an array
for (i = 0; i < ar.length; i ) {
// accessing each element of array
x = ar[i];
System.out.print(x " ");
}
}
}
Чтение файлов что-то вроде
import java.io.File; // Import the File class
import java.io.FileNotFoundException; // Import this class to handle errors
import java.util.Scanner; // Import the Scanner class to read text files
public class ReadFile {
public static void main(String[] args) {
try {
File myObj = new File("filename.txt");
Scanner myReader = new Scanner(myObj);
while (myReader.hasNextLine()) {
String data = myReader.nextLine();
System.out.println(data);
}
myReader.close();
} catch (FileNotFoundException e) {
System.out.println("An error occurred.");
e.printStackTrace();
}
}
}
Комментарии:
1. как бы мне перейти посимвольно?
2. @yoyo2 Каждая строка, которую выдает сканер, является строкой, и вы можете по существу обрабатывать строки как массивы. Кроме того, у кого-нибудь есть объяснение понижающего голоса? Я рад добавить к этому ответу, если есть действенная обратная связь.