Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #22839

Re: parse output and check if a change

From Kevin McMurtrie <mcmurtrie@pixelmemory.us>
Newsgroups comp.lang.java.programmer
Subject Re: parse output and check if a change
References <d8a65c18-bb59-42e8-85b9-8d47d4b21500@googlegroups.com> <5138e70e$0$32107$14726298@news.sunsite.dk> <5138e77a$0$32107$14726298@news.sunsite.dk>
Date 2013-03-08 19:16 -0800
Message-ID <513aa989$0$52745$742ec2ed@news.sonic.net> (permalink)
Organization Sonic.Net

Show all headers | View raw


In article <5138e77a$0$32107$14726298@news.sunsite.dk>,
 Arne Vajhøj <arne@vajhoej.dk> wrote:

> On 3/7/2013 2:14 PM, Arne Vajhøj wrote:
> > On 3/7/2013 2:10 PM, mike wrote:
> >> I am sending a command to unix and then I parse the output. The
> >> output is stored in a Info object ( Info.java). This will be used
> >> later in application.
> >>
> >> The problem is that the output from the unix command might change. So
> >> I want to make sure that if there is a change then we parse and
> >> update the Info object. But if there is no change then we do not need
> >> to parse and extract the information. We can use the Info object
> >> directly.
> >>
> >> The idea I have is to use the output from the command ( a text
> >> string) and calculate some kind of hash/md5sum.
> >>
> >> So the next time I run the unix command I take the output (a string)
> >> and calculate hash/md5 and see if it is an exact match as was
> >> generated the first time.
> >>
> >> Anyone will to give a hint on how to implememt this using java?
> >
> > You will need to code your logic, but hashing a String is easy:
> >
> > MessageDigest md = MessageDigest.getInstance("SHA-256");
> > byte[] hash = md.digest(data.getBytes());
> >
> > or maybe:
> >
> > MessageDigest md = MessageDigest.getInstance("SHA-256");
> > String hash = toHex(md.digest(data.getBytes()));
> >
> > ...
> >
> >      private static String toHex(byte[] ba) {
> >          char hexdigit[] = { '0', '1', '2', '3', '4', '5', '6', '7',
> > '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
> >          StringBuffer sb = new StringBuffer("");
> >          for (int i = 0; i < ba.length; i++) {
> >             sb.append(hexdigit[(ba[i] >> 4) & 0x0F]);
> >             sb.append(hexdigit[ba[i] & 0x0F]);
> >          }
> >          return sb.toString();
> >       }
> 
> MD5 is obsolete from a cryptographic point of view, so I
> switched to SHA-256.
> 
> Arne

I would have just saved the original String if it's not too big.
-- 
I will not see posts from Google because I must filter them as spam

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

parse output and check if a change mike <mikaelpetterson@hotmail.com> - 2013-03-07 11:10 -0800
  Re: parse output and check if a change Arne Vajhøj <arne@vajhoej.dk> - 2013-03-07 14:14 -0500
    Re: parse output and check if a change Arne Vajhøj <arne@vajhoej.dk> - 2013-03-07 14:16 -0500
      Re: parse output and check if a change Kevin McMurtrie <mcmurtrie@pixelmemory.us> - 2013-03-08 19:16 -0800
        Re: parse output and check if a change Arne Vajhøj <arne@vajhoej.dk> - 2013-03-08 22:29 -0500
    Re: parse output and check if a change Joerg Meier <joergmmeier@arcor.de> - 2013-03-07 23:50 +0100
      Re: parse output and check if a change Arne Vajhøj <arne@vajhoej.dk> - 2013-03-07 19:13 -0500
  Re: parse output and check if a change Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2013-03-07 16:59 -0800
  Re: parse output and check if a change lipska the kat <"nospam at neversurrender dot co dot uk"> - 2013-03-08 08:54 +0000

csiph-web