2016-10-19 5 views
-3

Я новичок в JAVA, и я понятия не имел, как это начать. Я искал хорошее начало. Мне нужно прочитать txt-файл, который имеет определенный формат и помещать его в представление. Сначала я должен прочитать размеры сетки, затем слова в порядке головоломки, затем количество слов, которые нужно найти, и последнее фактическое слово. Если кто-нибудь может привести меня в правильном направлении с примером, это действительно поможет. это формат текстового файлачтение кроссворда txt файл

5 5 
abcd 
dfad 
adfe 
lkjl 
ekkf 
5 
realword 
realword 
realword 
realword 
realword 

EDIT: так это то, что я пытался после тестирования считывать файл, который работает (спасибо!). но я получаю stuk здесь, мне все равно нужно изменить с char [] [] на поле [] [], так как мне понадобится его заполнить буквенный градиент.

import java.io.*; 
import java.util.List; 

public class Puzzle { 

    //Box[][] letterGrid; 
    char[][] letterGrid; 
    List<Word> wordList; 
    List<Box> wordInWording; 

    public Puzzle() { 
     try { 
      BufferedReader br = new BufferedReader(new FileReader("..\\word.txt")); 

      String[] dimensions = br.readLine().split(" "); 
      letterGrid = new char[Integer.parseInt(dimensions[0])][Integer.parseInt(dimensions[1])]; 

      for (int i = 0; i < letterGrid[0].length; i++) { 
       String val = br.readLine(); 
       letterGrid[i]= val.toCharArray(); 
      } 
      //while something something 
int r = br.read(); 
     int c = br.read(); 
     letterGrid = new char[r][c]; 

     for (int i = 0; i<r; i++){ 
      String getChar = new String(br.readLine()); 
      for(int j=0; j<c; j++){ 
       letterGrid[i][j] = getChar.charAt(j); 
      } 
     } 

//   String sCurrentLine; 
//   while ((sCurrentLine = br.readLine()) != null) { 
//    System.out.println(sCurrentLine); 
//   } 

     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

    } 

} 
+0

Я добавил что-то, но я не могу получить логику позади ints тогда символы, а затем int, а затем строки –

ответ

0

Вот хороший старт:

Я просто дать вам намек о том, как читать строки из текстового файла. После этого вы должны самостоятельно построить логику.

public static void main(String[] args) { 

     BufferedReader br = null; 

     try { 

      String sCurrentLine; 

      br = new BufferedReader(new FileReader("C:\\testing.txt")); 

      while ((sCurrentLine = br.readLine()) != null) { 
       System.out.println(sCurrentLine); 
      } 

     } catch (IOException e) { 
      e.printStackTrace(); 
     } finally { 
      try { 
       if (br != null)br.close(); 
      } catch (IOException ex) { 
       ex.printStackTrace(); 
      } 
     } 

    } 

Вы не должны размещать такие вопросы в SO без каких-либо попыток. Попробуйте ввести код, если вы застряли после этого и попросите о помощи. Сообщество не поощряет такие вопросы.

+0

, почему это было downvoted? –

+0

Чтение файла работало (спасибо!), Но затем я застрял в измерениях и чтении слов. Я просто не понимаю, как сначала прочитать int с пробелами между ними, а затем прочитать символы головоломки, а затем прочитать количество слов и последние фактические слова. Логики для меня пока нет. любая помощь? –