guardar datos de usuario durante un día (el mismo día -> muchos datos de usuario)
Tengo una aplicación donde el usuario ingresa datos en edittext y presiona el botón Guardar.
Al presionar 'guardar' guardo en un archivo los datos del usuario (en una columna) y la fecha actual (en la otra columna).
Luego, presiono otro botón y hago el trazado (usando achartengine) datos de fecha (eje x) (eje y).
Entonces, al ingresar datos durante un día, se guardan, por ejemplo: "1" (datos de usuario) -> 20/4/2013, "2" -> 20/4/2013, "3" -> 20/4/2013 .
Y en la gráfica tengo 3 puntos en el eje y (ok) y 3 puntos en el eje x (no ok).
Quiero tener un punto en el eje x porque los datos se ingresaron el mismo día.
Guardo datos:
public void savefunc(){
SimpleDateFormat thedate = new SimpleDateFormat("dd/MM/yyyy");
Date d=new Date();
String formattedDate=thedate.format(d);
Log.d("tag","format"+formattedDate);
dates_Strings.add(formattedDate);
double thedata=Double.parseDouble(value.getText().toString().trim());
mydata.add(thedata);
File sdCard = Environment.getExternalStorageDirectory();
File directory = new File (sdCard, "MyFiles");
directory.mkdirs();
File file = new File(directory, filename);
FileOutputStream fos;
//saving them
try {
fos = new FileOutputStream(file);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos));
for (int i=0;i<mydata.size();i++){
bw.write(mydata.get(i)+","+dates_Strings.get(i)+"\n");
}
...
¿Cómo puedo guardar los datos del usuario durante un día?
Tal vez algunos cheque aquí:Date d=new Date();
? Para comprobar si es el mismo día.
O aquí :bw.write(mydata.get(i)+","+dates_Strings.get(i)+"\n");
Pero no puedo entenderlo.
Por ejemplo, ingreso los datos "1", "2", "3" en la fecha "20/4/2013".
Esto es lo que obtengo ahora usando mi código:Esto es lo que obtengo ahora http://i35.tinypic.com/2rmsck5.png
Pero necesito un gráfico como el siguiente: los datos ingresados el mismo día se deben reunir:Esto es lo que quiero http://i38.tinypic.com/255p5i9.png
---------------ACTUALIZAR---------------------------------- ----------------
mRenderer.setXLabels(0);
for (int i=0;i<mydata.size();i++){
mRenderer.addXTextLabel(i,dates_Strings.get(i));
Date lastDate=null;
String lastdate="";
try{
// the initial date
Date initialDate=formatter.parse(dates_Strings.get(mydata.size()-1));
Calendar c = Calendar.getInstance();
c.setTime(initialDate);
c.add(Calendar.DATE, 1); // increase date by one
lastDate =c.getTime();
}catch ...
}
mRenderer.setXAxisMax(lastDate.getTime());
mRenderer.addXTextLabel(i,dates_Strings.get(i));
}