小编Way*_*int的帖子

Java序列化 - Android反序列化

我尝试在Java和Android之间实现跨平台序列化.我使用了Serializable,并将Android中的代码放在与桌面Java相同的包中.

来源:java-desktop序列化

    Student student=new Student(); 
    student.setName("John");
    student.setSurname("Brown");
    student.setNumber(776012345);

    try {
      FileOutputStream fout = new FileOutputStream("thestudent.dat");
      ObjectOutputStream oos = new ObjectOutputStream(fout);
      oos.writeObject(student);
      oos.close();
    }
      catch (Exception e) { e.printStackTrace(); }

    }
Run Code Online (Sandbox Code Playgroud)

来源:Android - 反序列化

File file=new File(getExternalFilesDir(null), "thestudent.dat");

    try {

      FileInputStream fint = new FileInputStream(file);
      ObjectInputStream ois = new ObjectInputStream(fint);
      Student stud=(Student) ois.readObject();
      ois.close();
    }
      catch (Exception e) { e.printStackTrace(); }

}
Run Code Online (Sandbox Code Playgroud)

Student是一个实现Serializable的类.在桌面上我将学生的实例序列化为"thestudent.dat".我把这个文件放在Android设备的SD卡上,我试图反序列化它.我收到错误java.lang.ClassCastException:javaserializace.Student.但为什么?序列化时我有相同的包,反序列化时包含相同的包.所有不同的是项目名称.你看到任何解决方案吗?

编辑 - 学生班的来源:

public class Student implements Serializable {

private String name;
private String surname;
private …
Run Code Online (Sandbox Code Playgroud)

java serialization android deserialization

6
推荐指数
1
解决办法
6351
查看次数

简单的int to char []转换

我有一个简单的问题

如何简单地将整数(获取值0-8)转换为char,例如C中的char [2]?

谢谢

c character-encoding

5
推荐指数
1
解决办法
6万
查看次数

将inputStream转换为FileInputStream?

我遇到了问题 - 我需要从Android APK(例如key.keystore)读取SecretKey,对于我的应用程序,它必须被读取为FileInputStream,但是从资产中我只得到inputStream.如何将inputStream转换为FileInputStream?或者有没有其他方法,如何从文件作为fileInputStream访问文件?

谢谢

android inputstream fileinputstream

5
推荐指数
1
解决办法
1万
查看次数

Android MapView - 自定义缩放按钮

你知道吗,如果有办法如何在Android的mapView中制作自定义缩放按钮?或者只有预先准备的变焦控制?

谢谢

Hmyzak

android zooming android-mapview

5
推荐指数
2
解决办法
5062
查看次数

Android是否支持除SQLite之外的任何其他数据库系统?

我一直在搜索并发现,android只支持SQLite数据库而不是其他.这是真的?

database sqlite android

5
推荐指数
1
解决办法
7877
查看次数

Android - 以编程方式获取USS内存分配

我强迫这个问题:

我需要知道我的应用程序的USS内存分配(=您的APP分配了多少RAM).我知道,有可能从"adb shell procrank"获取此信息,但我希望以编程方式获得它.有什么方法可以做到吗?还是任何功能齐全的代码片段?最多知道,我没有成功通过adb shell检查是不舒服和缓慢的.

android memory-management uss

5
推荐指数
0
解决办法
514
查看次数

SQLiteOpenHelper - 在SD卡上创建数据库

在我的测试Android应用程序中,我打算创建和访问数据库文件,它将位于SD卡上.我在一个类的帮助下使用main活动,该类扩展了SQLiteOpenHelper.我想以与以前相同的方式使用它,但我必须以某种方式更改数据库PATH.你知道吗,如何实现它?

谢谢

我当前扩展SQLiteOpenHelper的类的代码:

public class DatabaseDefinition extends SQLiteOpenHelper{
private static final String DATABASE_NAME="test.db";
private static final int DATABASE_VERSION=1;

public DatabaseDefinition(Context context) {
    super(context,DATABASE_NAME,null, DATABASE_VERSION);

}

@Override
public void onCreate(SQLiteDatabase db) {
    db.execSQL("CREATE TABLE "+TABLE_NAME+" ("+ _ID +" INTEGER PRIMARY KEY AUTOINCREMENT, "+ NAME+" TEXT NOT NULL, " +SURNAME+" TEXT NOT NULL, "+PHONE+" INT NOT NULL);");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    db.execSQL("DROP TABLE IF EXISTS" + TABLE_NAME);
    onCreate(db);

}
Run Code Online (Sandbox Code Playgroud)

和我的主要代码:

public class DatabaseExampleActivity extends Activity …
Run Code Online (Sandbox Code Playgroud)

database sqlite android sd-card sqliteopenhelper

5
推荐指数
1
解决办法
2万
查看次数

Android SQLite将表复制到另一个表中

我想在Android的SQLite中实现删除列.我想制作没有所需列的表格复制,而不是删除以前的平板电脑并将名称设置为new_one作为以前的名称.我已经制作了表到表的副本,但现在我把它作为1:1的副本.如何在复制时更改列?

目标是拥有方法deleteColumn(int indexOfColumn) ;

谢谢

sqlite android copying database-table

5
推荐指数
1
解决办法
8864
查看次数

Android - 获取分配的内存

有什么办法,如何确定Android应用程序中的实际分配内存(代码中)?

谢谢

航点

android memory-management

5
推荐指数
1
解决办法
3504
查看次数

Android-从byte []阵列播放mp3

我有byte []数组,其中包含mp3文件。有什么方法可以在不创建临时文件的情况下播放mp3文件?

谢谢

编辑:

我尝试了临时文件方法:

                File tempMp3 = File.createTempFile("test", ".mp3", getCacheDir());

                //tempMp3.deleteOnExit();
                FileOutputStream fos = new FileOutputStream(tempMp3);
                fos.write(bytes);
                fos.close();

                mediaPlayer = MediaPlayer.create(getApplicationContext(),Uri.fromFile(tempMp3));
                mediaPlayer.start();
Run Code Online (Sandbox Code Playgroud)

而且我仍然收到NullPointerException。我正在将字节数组(称为字节)写入文件,我保持其引用并使用它。但仍然获得NPE。你知道错在哪里吗?

mp3 android bytearray file

5
推荐指数
1
解决办法
8591
查看次数