Java читает различные переменные с ObjectInputStream - PullRequest
3 голосов
/ 10 апреля 2011

У меня есть ObjectInputStream, который должен прочитать два разных ввода, которые являются строкой и моим собственным созданным объектом.У меня есть поток, который постоянно ожидает ввода, и в зависимости от ввода, будь то строка или объект, он будет обрабатывать результат.Мне нужен способ для ввода, чтобы можно было различить два.

Любая помощь будет отличной.

Спасибо

Ответы [ 2 ]

3 голосов
/ 10 апреля 2011

Разве это не случай дела:

if (objectFromStream instanceof YourObejct) {

    YourObject obj = (YourObject) objectFromStream;
    ....

} else if (objectFromStream instanceof String) {

    String str = (String) objectFromStream;

} else {
  // throw excepption..

}
2 голосов
/ 10 апреля 2011

Если только два варианта - это Стинг и ваш объект, то вы можете попробовать это:

    Object obj = ois.readObject();
    if(obj instanceof String){
       String s = (String)obj;
    }else{
       if(obj instanceof MyObject){
          MyObject m = (MyObject)obj;
       }

    }
...