SaveLocation.java 1.88 KiB
package pikelake;
import java.io.File;
import java.io.FileWriter;
import java.text.DecimalFormat;
import pikelake.pikes.Pike;
import pikelake.pikes.PikeTrackLocation;
import pikelake.pikes.PikesGroup;
import fr.cemagref.simaqualife.kernel.processes.AquaNismsGroupProcess;
public class SaveLocation extends AquaNismsGroupProcess<Pike, PikesGroup> {
	@Override
	public void doProcess(PikesGroup group) {
		final String chemin = "data/output/Positions.txt";
		final File fichier = new File(chemin);
		String ligne = null;
		DecimalFormat df = new DecimalFormat("00");
		try {
			// Creation du fichier
			fichier.createNewFile();
			// creation d'un writer (un écrivain)
			final FileWriter writer = new FileWriter(fichier);
			try {
				// Creation de la ligne d'en-tete du fichier
				ligne = "PasTps \t\t Date \t\t";
				for (int i=1; i!=Pike.cptIndividu; i++) {
					ligne = ligne + "Ind " + i + " \t";
				writer.write(ligne + "\n\r");
				for (int compteur = 0; compteur < PikeTrackLocation.trackLocation[1].length; compteur++) {
					// Recuperation pas de la simulation + de la date			 	
					ligne = String.valueOf(PikeTrackLocation.trackDate[0][compteur]) + "\t\t";
					ligne = ligne + PikeTrackLocation.trackDate[1][compteur] + "/" +
									df.format(PikeTrackLocation.trackDate[2][compteur]) + "/" + 
									df.format(PikeTrackLocation.trackDate[3][compteur]) + "/" + 
									df.format(PikeTrackLocation.trackDate[4][compteur]) + "\t";
					// enregistrement des positions
					for (int i=1; i<PikeTrackLocation.trackLocation.length; i++) {
						ligne = ligne + PikeTrackLocation.trackLocation[i][compteur] + "\t";;
					ligne = ligne + "\n";
					writer.write(ligne);
			} finally {
				writer.close();
		} catch (Exception e) {
			System.out.println("Impossible de creer le fichier d'enregistrement des positions.");