From f8b26651e6c79267dc26ed55a00846691daf9563 Mon Sep 17 00:00:00 2001 From: tjc <tjc@ee4ac58c-ac51-4696-9907-e4b3aa274f04> Date: Tue, 22 Feb 2011 15:15:16 +0000 Subject: [PATCH] wrap sequence string git-svn-id: svn+ssh://svn.internal.sanger.ac.uk/repos/svn/pathsoft/artemis/trunk@15584 ee4ac58c-ac51-4696-9907-e4b3aa274f04 --- .../artemis/components/variant/IOUtils.java | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/uk/ac/sanger/artemis/components/variant/IOUtils.java b/uk/ac/sanger/artemis/components/variant/IOUtils.java index 7a84c4dc5..420adf44d 100644 --- a/uk/ac/sanger/artemis/components/variant/IOUtils.java +++ b/uk/ac/sanger/artemis/components/variant/IOUtils.java @@ -181,14 +181,14 @@ class IOUtils "Warning", JOptionPane.WARNING_MESSAGE); return; } - + MarkerRange marker = selection.getMarkerRange(); Range range = marker.getRawRange(); int direction = ( marker.isForwardMarker() ? Bases.FORWARD : Bases.REVERSE); FeatureVector features = entryGroup.getAllFeatures(); FileWriter writer = null; String fastaFiles = ""; - + String name = entryGroup.getActiveEntries().elementAt(0).getName(); int sbeg = range.getStart(); int send = range.getEnd(); @@ -196,7 +196,6 @@ class IOUtils StringBuffer buffSeq = null; try { - if(!view) { File newfile = new File( @@ -222,16 +221,14 @@ class IOUtils if(view) // sequence viewer { - buffSeq.append(">"); - buffSeq.append(header.toString()); - buffSeq.append("\n"); - buffSeq.append(basesStr); + buffSeq.append(">").append(header.toString()).append("\n"); + wrapString(basesStr, buffSeq); buffSeq.append("\n"); } else // write to file writeSequence(writer, header.toString(), basesStr); } - + if(writer != null) writer.close(); } @@ -397,6 +394,19 @@ class IOUtils return basesStr; } + + private static void wrapString(String bases, StringBuffer buff) + { + final int SEQUENCE_LINE_BASE_COUNT = 60; + for(int k=0; k<bases.length(); k+=SEQUENCE_LINE_BASE_COUNT) + { + int end = k + SEQUENCE_LINE_BASE_COUNT; + if(end > bases.length()) + end = bases.length(); + buff.append ( bases.substring(k,end) ).append("\n"); + } + } + private static void writeSequence(FileWriter writer, String header, String bases) throws IOException { writer.write (">" + header + "\n"); -- GitLab