📄 reportallwallet.java
字号:
package com.android;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import android.app.Activity;
import android.database.Cursor;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;
public class ReportAllWallet extends Activity{
private static final String tag = null;
//private static final int MAX_PROGRESS = 0;
private WalletDbAdapter lDbAdapter;
private Cursor cur;
private ListView lv2;
private double totalIncome,profit,totalSurplus,deficits;
private TextView lTotalIncome,lProfit,lTotalSurplus,lDeficits;
//menu set
public final int SAVE_ID=Menu.FIRST;
public final int DEL_ID=Menu.FIRST+1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.report_view);
lDbAdapter=new WalletDbAdapter(this);
lDbAdapter.open();
cur=lDbAdapter.fetchAllWallets();
ListView lv=(ListView)findViewById(R.id.listview);
String[] from=new String[] {"_id","wDate", "wClass","wMoney",};
int[] to=new int[] {R.id.item1,R.id.item2,R.id.item3,R.id.item4};
SimpleCursorAdapter mAdapter=new SimpleCursorAdapter(this,R.layout.wallet_head, cur,from, to);
lv.setAdapter(mAdapter);
lv2=lv;
lTotalIncome=(TextView) findViewById(R.id.totalincome);
lProfit=(TextView) findViewById(R.id.profit);
lTotalSurplus=(TextView) findViewById(R.id.totalsurplus);
lDeficits=(TextView) findViewById(R.id.deficits);
//The first data
cur.moveToFirst();
if(cur.getString(2).toString().equals("income")){
totalIncome=totalIncome+Double.parseDouble(cur.getString(3));
}else if(cur.getString(3).toString().equals("disburse")){
totalSurplus=totalSurplus+Double.parseDouble(cur.getString(3));
}
//All the next datas
for(int i=1;i<=cur.getCount()-1;i++){
if(!cur.isLast()){
cur.moveToNext();
if(cur.getString(2).toString().equals("income")){
totalIncome+=Double.parseDouble(cur.getString(3));
}
if(cur.getString(2).toString().equals("disburse")){
totalSurplus+=Double.parseDouble(cur.getString(3));
}
}
}
//愒帤 || 忚梋
if(totalIncome>=totalSurplus){
profit=totalIncome-totalSurplus;
}else{
deficits=totalSurplus-totalIncome;
}
lTotalIncome.setText(lTotalIncome.getText().toString() + totalIncome);
lProfit.setText(lProfit.getText().toString() + profit);
lTotalSurplus.setText(lTotalSurplus.getText().toString() + totalSurplus);
lDeficits.setText(lDeficits.getText().toString() + deficits);
//set menu
}
@Override
public boolean onCreateOptionsMenu(Menu menu){
super.onCreateOptionsMenu(menu);
menu.add(0, SAVE_ID, 0, R.string.SAVE_ITEM);
menu.add(0, DEL_ID, 1, R.string.DEL_ITEM);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item){
String fileName;
switch (item.getItemId()){
case SAVE_ID:
MyDate myDate=new MyDate();
fileName=myDate.MySimpleDateFormat().substring(0, 10)+ ".txt";
File sdcard = Environment.getExternalStorageDirectory();
File file=new File(sdcard + "/" + fileName);
Log.v(tag, "the result count is=" + cur.getCount());
Log.v(tag, "the result content is1111=" + lv2.getAdapter());
StringBuilder builder = new StringBuilder(" ");
builder.ensureCapacity(45);
//builder.append("Id");
builder.replace(0, 5, "Id");
builder.replace(6, 6+"擔帪".length()-1, "擔帪");
builder.replace(25, 25+"椶暿".length()-1, "椶暿");
builder.replace(40, 40+"class".length()-1, "嬥妟");
Log.v(tag, "the stringbuilder is ="+ builder);
try {
PrintWriter out
= new PrintWriter(new BufferedWriter(new FileWriter(file)));
out.println(builder);
cur.moveToFirst();
for(int j=0;j<=cur.getCount()-1;j++){
StringBuilder builder2 = new StringBuilder(" ");
builder2.ensureCapacity(45);
if(!cur.isLast()){
builder2.replace(0, 5, cur.getString(0).toString());
builder2.replace(6, 6+cur.getString(1).toString().substring(0,10).length()-1, cur.getString(1).toString().substring(0,10));
builder2.replace(23, 23+cur.getString(2).length()-1, cur.getString(2));
builder2.replace(39, 39+cur.getString(3).length()-1, cur.getString(3));
cur.moveToNext();
out.println(builder2);
}
}
StringBuilder builder3 = new StringBuilder(" ");
builder3.ensureCapacity(45);
if(cur.isLast()){
builder3.replace(0, cur.getString(0).length(), cur.getString(0));
builder3.replace(6, 6+cur.getString(1).toString().substring(0,10).length()-1, cur.getString(1).toString().substring(0,10));
builder3.replace(23, 23+cur.getString(2).length()-1, cur.getString(2));
builder3.replace(39, 39+cur.getString(3).length()-1, cur.getString(3));
}
out.println(builder3);
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
/**
try {
PrintWriter out
= new PrintWriter(new BufferedWriter(new FileWriter(file)));
out.print("Id");
out.print(" ");
out.print("擔帪");
out.print(" ");
out.print("椶暿");
out.print(" ");
out.println("嬥妟");
cur.moveToFirst();
for(int j=0;j<=cur.getCount()-1;j++){
if(!cur.isLast()){
out.print(cur.getString(0).toString());
out.print(" ");
out.print(cur.getString(1).toString().substring(0, 10));
out.print(" ");
out.print(cur.getString(2).toString());
out.print(" ");
out.println(cur.getString(3).toString());
System.arraycopy(cur.getString(1).toString(),0,al,0,cur.getString(0).toString().length());
Log.v(tag, "the ArrayList al is=" + al);
cur.moveToNext();
}
}
if(cur.isLast()){
out.print(cur.getString(0).toString());
out.print(" ");
out.print(cur.getString(1).toString().substring(0, 10));
out.print(" ");
out.print(cur.getString(2).toString());
out.print(" ");
out.println(cur.getString(3).toString());
}
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
*/
break;
case DEL_ID:
break;
}
return super.onOptionsItemSelected(item);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -