1、
public class MainActivity extends Activity {
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) this.findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@SuppressLint("NewApi") @Override
public void onClick(View v) {
// TODO Auto-generated method stub
// ClipboardManager clipboardManager = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
// String name = "Jack";
// clipboardManager.setText(name);
// Intent intent = new Intent(MainActivity.this,OtherActivity.class);
// startActivity(intent);
MyData myData = new MyData("jack", 23);
//将对象转换成字符串
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
String base64String = "";
try {
ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream);
objectOutputStream.writeObject(myData);
base64String = Base64.encodeToString(byteArrayOutputStream.toByteArray(), Base64.DEFAULT);
objectOutputStream.close();
} catch (Exception e) {
// TODO: handle exception
}
ClipboardManager clipboardManager = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
clipboardManager.setText(base64String);
Intent intent = new Intent(MainActivity.this,OtherActivity.class);
startActivity(intent);
}
});
}
}
2、
public class OtherActivity extends Activity {
private TextView textView;
@SuppressLint("NewApi") @Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.other);
textView =(TextView) this.findViewById(R.id.msg);
ClipboardManager clipboardManager = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
String msgString = clipboardManager.getText().toString();
byte[] base64_byte = Base64.decode(msgString, Base64.DEFAULT);
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(base64_byte);
try {
ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream);
MyData myData = (MyData) objectInputStream.readObject();
textView.setText(myData.toString());
} catch (Exception e) {
// TODO: handle exception
}
}
}
3、
public class MyData implements Serializable {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public MyData(String name, int age) {
super();
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "MyData [getName()=" + getName() + ", getAge()=" + getAge()
+ "]";
}
}