it sounds very much to me that if you get found guilty you will be looking at a sizeable prison sentence(? five years?)
i presume this will also mean you will lose your job.
There is a big difference between saying you are going to stab soeone in the face (what they did) and actually stabbing someone in the face (what you did). I'm afraid that the "self defence" arguement you are putting forward also wont work, as unless you are a mind reader, how do you know what the other blokes intention was? he will of course deny he was going to go for you.
Of course, waht you should have done on seeing the bloke in town was not to approach him(you are the agressor in this situation). Not that this is very helpful to you now i suppose.