fork download
  1. importPackage(java.io);
  2. importPackage(java.lang);
  3.  
  4. // your code goes here
  5. System.out.println("Test");
  6. logMsg = true;
  7. data = "010055724986228C2400021D8711018DE6D0AD903A63B6EACDE3D3E009EB4F8E08D7CA9DA8F90BB89686230CDABF3C1E8112DF0106000000005000DF02060000000050008E089F66B08FCCD73A1F91088A09EE6303920000";
  8. if(logMsg){
  9. System.out.println("Parsing TLV Data F055");
  10. System.out.println(data);
  11. }
  12. strLen = data.length-1;;
  13. if(logMsg){
  14. System.out.println(strLen);
  15. }
  16. len = parseInt(strLen,16)*2;
  17. //tags = new visaTagContainer();
  18. while(len > 0){
  19. ds = data.substr(0,2);
  20. data = data.substr(2);
  21. dsLen = parseInt(data.substr(0,4),16)*2;
  22. data=data.substr(4);
  23. dsDat = data.substr(0,dsLen);
  24. data=data.substr(dsLen);
  25. len = data.length;
  26. System.out.println("Found DS [" + ds + "] [" + dsLen + "] [" + dsDat + "]");
  27. while(dsLen > 0){
  28. //take first 2 chars
  29. //tlv = new visaTlvObj();
  30. tag = dsDat.substr(0,2);
  31. dsDat = dsDat.substr(2);
  32. if(tag == "9F" || tag == "5F") {
  33. tag += dsDat.substr(0,2);
  34. dsDat=dsDat.substr(2);
  35. }
  36. tagLen = parseInt(dsDat.substr(0,2),16)*2;
  37. dsDat = dsDat.substr(2);
  38. val = dsDat.substr(0,tagLen);
  39. dsDat = dsDat.substr(tagLen);
  40. dsLen = dsDat.length;
  41.  
  42. System.out.println("Found tag [" + tag + "] [" + tagLen + "] [" + val + "]");
  43. }
  44. }
Success #stdin #stdout 0.54s 46044KB
stdin
Standard input is empty
stdout
Test
Parsing TLV Data F055
010055724986228C2400021D8711018DE6D0AD903A63B6EACDE3D3E009EB4F8E08D7CA9DA8F90BB89686230CDABF3C1E8112DF0106000000005000DF02060000000050008E089F66B08FCCD73A1F91088A09EE6303920000
175.0
Found DS [01] [170] [724986228C2400021D8711018DE6D0AD903A63B6EACDE3D3E009EB4F8E08D7CA9DA8F90BB89686230CDABF3C1E8112DF0106000000005000DF02060000000050008E089F66B08FCCD73A1F91088A09EE6303920000]
Found tag [72] [146] [86228C2400021D8711018DE6D0AD903A63B6EACDE3D3E009EB4F8E08D7CA9DA8F90BB89686230CDABF3C1E8112DF0106000000005000DF02060000000050008E089F66B08FCCD73A1F]
Found tag [91] [16] [8A09EE6303920000]