import java.io.BufferedWriter;
import java.io.File;
-import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.StringWriter;
public final static String PHYLO_XML_INTENDATION_BASE = " ";
public final static String PHYLO_XML_VERSION_ENCODING_LINE = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
public final static String PHYLO_XML_NAMESPACE_LINE = "<phyloxml xmlns:xsi=\""
- + ForesterConstants.XML_SCHEMA_INSTANCE
- + "\" xsi:schemaLocation=\""
- + ForesterConstants.PHYLO_XML_LOCATION
- + " "
- + ForesterConstants.PHYLO_XML_LOCATION
- + "/"
- + ForesterConstants.PHYLO_XML_VERSION
- + "/" + ForesterConstants.PHYLO_XML_XSD
- + "\" " + "xmlns=\""
- + ForesterConstants.PHYLO_XML_LOCATION
- + "\">";
+ + ForesterConstants.XML_SCHEMA_INSTANCE
+ + "\" xsi:schemaLocation=\""
+ + ForesterConstants.PHYLO_XML_LOCATION
+ + " "
+ + ForesterConstants.PHYLO_XML_LOCATION
+ + "/"
+ + ForesterConstants.PHYLO_XML_VERSION
+ + "/" + ForesterConstants.PHYLO_XML_XSD
+ + "\" " + "xmlns=\""
+ + ForesterConstants.PHYLO_XML_LOCATION
+ + "\">";
public final static String PHYLO_XML_END = "</phyloxml>";
private boolean _saw_comma;
private StringBuffer _buffer;
if ( tree.getConfidence() != null ) {
if ( ForesterUtil.isEmpty( tree.getConfidence().getType() ) ) {
PhylogenyDataUtil.appendElement( writer, PhyloXmlMapping.CONFIDENCE, tree.getConfidence().getValue()
- + "", indentation );
+ + "", indentation );
}
PhylogenyDataUtil.appendElement( writer,
PhyloXmlMapping.CONFIDENCE,
public void toNexus( final File out_file, final Phylogeny tree, final NH_CONVERSION_SUPPORT_VALUE_STYLE svs )
throws IOException {
- final Writer writer = new BufferedWriter( new PrintWriter( out_file ) );
+ final Writer writer = new BufferedWriter( new PrintWriter( out_file, ForesterConstants.UTF_8 ) );
final List<Phylogeny> trees = new ArrayList<Phylogeny>( 1 );
trees.add( tree );
writeNexusStart( writer );
final List<Phylogeny> trees,
final int phyloxml_level,
final String separator ) throws IOException {
- final Writer writer = new BufferedWriter( new PrintWriter( out_file ) );
+ final Writer writer = new BufferedWriter( new PrintWriter( out_file, ForesterConstants.UTF_8 ) );
toPhyloXML( writer, trees, phyloxml_level, separator );
writer.flush();
writer.close();
}
public void toPhyloXML( final File out_file, final Phylogeny tree, final int phyloxml_level ) throws IOException {
- final Writer writer = new BufferedWriter( new PrintWriter( out_file ) );
+ final Writer writer = new BufferedWriter( new PrintWriter( out_file, ForesterConstants.UTF_8 ) );
writePhyloXmlStart( writer );
toPhyloXMLNoPhyloXmlSource( writer, tree, phyloxml_level );
writePhyloXmlEnd( writer );
PhylogenyDataUtil.appendOpen( getWriter(),
PhyloXmlMapping.CLADE,
PhyloXmlMapping.NODE_COLLAPSE,
- "true" );
+ "true" );
}
else {
PhylogenyDataUtil.appendOpen( getWriter(), PhyloXmlMapping.CLADE );
if ( out_file.exists() ) {
throw new IOException( "attempt to overwrite existing file \"" + out_file.getAbsolutePath() + "\"" );
}
- final PrintWriter out = new PrintWriter( new FileWriter( out_file ), true );
- if ( getOutputFormt() == FORMAT.PHYLO_XML ) {
- out.print( PHYLO_XML_VERSION_ENCODING_LINE );
- out.print( ForesterUtil.LINE_SEPARATOR );
- out.print( PHYLO_XML_NAMESPACE_LINE );
- out.print( ForesterUtil.LINE_SEPARATOR );
- }
+ final PrintWriter out = new PrintWriter( out_file, ForesterConstants.UTF_8 );
out.print( sb );
- if ( getOutputFormt() == FORMAT.PHYLO_XML ) {
- out.print( ForesterUtil.LINE_SEPARATOR );
- out.print( PHYLO_XML_END );
- }
out.flush();
out.close();
}
else if ( !ForesterUtil.isEmpty( node.getNodeData().getTaxonomy().getCommonName() ) ) {
data = node.getNodeData().getTaxonomy().getCommonName();
}
- else if ( node.getNodeData().getTaxonomy().getTaxonomyCode() != null ) {
- data = node.getNodeData().getTaxonomy().getTaxonomyCode();
- }
}
else if ( node.getNodeData().isHasSequence() ) {
if ( !ForesterUtil.isEmpty( node.getNodeData().getSequence().getName() ) ) {
data = node.getNodeData().getSequence().getName();
}
+ else if ( !ForesterUtil.isEmpty( node.getNodeData().getSequence().getSymbol() ) ) {
+ data = node.getNodeData().getSequence().getSymbol();
+ }
+ else if ( !ForesterUtil.isEmpty( node.getNodeData().getSequence().getGeneName() ) ) {
+ data = node.getNodeData().getSequence().getGeneName();
+ }
}
- if ( data.length() > 0 ) {
- data = data.replaceAll( " ", "_" );
- }
- writer.write( data );
+ writer.write( ForesterUtil.santitizeStringForNH( data ).toString() );
}
writer.write( ";" );
writer.write( ForesterUtil.LINE_SEPARATOR );
NH, NHX, PHYLO_XML, NEXUS;
}
}
+
+
+
+