On 11-06-07 09:51 AM, bugbear wrote:
> Silvio wrote:
>> On 06/07/2011 01:59 PM, Lawrence D'Oliveiro wrote:
>>> The following one-liner sets the versionName attribute in
>>> AndroidManifest.xml to a number based on the number of days (accurate to
>>> 0.1 day) since the *nix epoch. This is what I’ve been using for a
>>> version number in one or two projects, in lieu of anything that makes
>>> more sense. 
>>>
>>> sed -i -r 's/(android:versionName=\")[^\"]*(\")/\1'"$(bc<<<"scale = 1;
>>> ($(Julian -f) - $(Julian -d 1970 1 1)) / 1")"'\2/' AndroidManifest.xml
>>>
>>> This needs my “Julian” script, available here
>>> <https://github.com/ldo/Julian>. Though it can probably be rewritten
>>> to do without it, using the GNU “date” command instead...
>>
>> What about date +%s%N
>
> I am reminded of this:
>
> http://www.infiltec.com/j-h-wrld.htm
>
> BugBear
I caught myself doing something like this last week. I had what seemed
like a rather thorny problem with very dynamic objects for backing up
C#.NET WPF property grids, and temporarily ended up down the
Reflection.Emit and IDynamicMetaObjectProvider trails (*). A body can
definitely end up not seeing the forest for the trees when doing this
kind of thing, and at one point I ended up with
value = Activator.CreateInstance(typeof(dataType), "");
to get an empty string, when I in fact knew by virtue of having arrived
at that particular switch case that I needed an empty string...otherwise
I wouldn't have been calling the constructor form that accepted a string
parameter. IOW, the switch case for the above was for strings only, and
I knew that 'dataType' had to be a string value.
It struck me all of a sudden, and I ended up with
value = "";
Rule of Thumb: if things have gotten bloody complicated and they don't
feel like they ought to have been that way, you're probably right.
AHS
* I eventually realized that simple dynamic objects did handle the problem.