안녕하세요 저는 여름에 프로그래밍 수업을 듣기 때문에 파일에서 입력을 읽는 프로그램을 만들어야합니다. 입력 파일에는 DNA 서열 ATCGAGG 등이 포함되어 있으며 파일의 첫 번째 줄에는 얼마나 많은 시퀀스 쌍을 비교해야하는지가 나와 있습니다. 나머지는 시퀀스 쌍입니다. 클래스에서는 Scanner 메서드를 사용하여 파일의 행을 입력합니다 (BufferedReader에 대해 읽었지만 익숙하지 않으므로 수업에서 다루지는 못했습니다). 그러나 두 행을 비교하는 방법에 대한 코드를 작성하는 방법은 분실했습니다. Scanner 메서드를 동시에 호출합니다.스캐너를 사용하여 입력 파일에서 두 줄 읽어보기
내 시도 : 그들이 어떤 공통의 문자를 일반이 있다면 비교 방법은 시퀀스 출력 한 쌍을 것
public static void main (String [] args) throws IOException
{
File inFile = new File ("dna.txt");
Scanner sc = new Scanner (inFile);
while (sc.hasNextLine())
{
int pairs = sc.nextLine();
String DNA1 = sc.nextLine();
String DNA2 = sc.nextLine();
comparison(DNA1,DNA2);
}
sc.close();
}
. 또한 어떻게 다음 쌍을 입력 진행, 어떤 통찰력이 도움이 될 것입니다 .. 단지 혼란스러워하고 구글은 나를 더욱 혼란스럽게했다. 감사!
편집 : 여기
샘플 입력을의 당신이하고있는 이유
7
atgcatgcatgc
AtgcgAtgc
GGcaAtt
ggcaatt
GcT
gatt
aaaaaGTCAcccctccccc
GTCAaaaaccccgccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
gctagtacACCT
gctattacGcct
:
좋아, 난 그냥 뭔가가 선을 발견 한 후이 같은 건에 대한 확인이다 무력 그래서 나는 부분이 있더라도 그들을 밖으로 인쇄, 어떻게 든 나를 위해 wokrked progz이 'int pairs = Integer.parseInt (sc.nextLine());'어쨌든'dna.txt' 파일의 구조를 참조 할 수 있습니다. – Smit
그러나 내가 이해 한 것은'while' 루프 밖에서'pairs'를 읽어야한다는 것입니다. – Smit
while 루프는 그냥 다른 줄이 있으면 인쇄 할 것이고 첫 줄은 쌍을 결정하므로 루프 안으로 들어가야한다는 것을 알았습니다 ... 여전히 txt 외부의 첫 줄을 읽겠습니까 루프? –