private static void createARFFBeforeAfter(ArrayList<DataExtractorBeforeAfter> listDataExtractor, 
            String activity, int bufferLength, int frequency, boolean[] yesNo, 
            String mapDestination)
    {
        String classes = createClassesOutput();
        String data = "@DATA" + System.getProperty("line.separator");
        if (activity == null)
        {
            activity = "all";
        }
        if (mapDestination == null)
        {
            mapDestination = "all";
        }
        
        String outputFileString = createOutputName(yesNo[0], yesNo[1], yesNo[2], 
                yesNo[3], yesNo[4], yesNo[5], yesNo[6], yesNo[7], yesNo[8], 
                yesNo[9], yesNo[10], yesNo[11], 
            yesNo[12], yesNo[13]);
        
        File outputFile = new File(FileReader.FOLDER_BASE + FOLDER_OUTPUT + 
                FOLDER_BEFORE_AFTER + mapDestination + File.separator + activity 
                + File.separator + outputFileString + File.separator + "Output_" 
                + outputFileString + "_" + bufferLength + "_" + frequency 
                + ".arff");
        
        try
        {
            if (!outputFile.exists())
            {
                outputFile.getParentFile().mkdirs();
                outputFile.createNewFile();
            }
            
            BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));
            writer.write(PROLOGUE);
            writer.write(listDataExtractor.get(0)
                    .buildFeaturesListForARFF(yesNo[0], yesNo[1], yesNo[2], 
                yesNo[3], yesNo[4], yesNo[5], yesNo[6], yesNo[7], yesNo[8], 
                yesNo[9], yesNo[10], yesNo[11], yesNo[12], yesNo[13]));
        
            writer.write(classes);
            writer.write(data);
            
            for (DataExtractorBeforeAfter extractor: listDataExtractor)
            {
                writer.write(extractor.dataForAllExercises(yesNo[0], yesNo[1], yesNo[2], 
                yesNo[3], yesNo[4], yesNo[5], yesNo[6], yesNo[7], yesNo[8], 
                yesNo[9], yesNo[10], yesNo[11], yesNo[12], yesNo[13]));
            }
            
            writer.flush(); writer.close();
            WhereIsMySmartphoneAnalyzer.generatedFiles.add(outputFile.getPath().replace(FileReader.FOLDER_BASE, "")
                .replace(FOLDER_OUTPUT, ""));
        }
        catch(Exception exc)
        {
            //exc.printStackTrace();
        }
    }