29 Nisan 2016 Cuma

SAX DefaultHandler Sınıfı

Giriş
Şu satırı dahil ederiz.
import org.xml.sax.helpers.DefaultHandler;
characters metodu
Tag arasındaki veriyi verir. Şöyle yaparız.
StringBuilder buf = new StringBuilder();

@Override
public void characters(char[] ch, int start, int length) {
  buf.append(ch, start, length);
  ...
}
endDocument metodu
İmzası şöyle.
@Override
public void endDocument() throws SAXException {
endElement metodu
qname XML tag'ini verir. Şöyle yaparız.
@Override
public void endElement(String uri, String localName, String qName)
        throws SAXException {
  if (qName.equals("parent")) {
    ...
  } else if (qName.equals("child1")) {
    ...
  } else if (qName.startsWith("child")) {
    ...
  }
}
startElement metodu
qname XML tag'ini verir. Şöyle yaparız.
@Override
public void startElement(String uri, String localName, String qName,
        Attributes attributes) throws SAXException {
  if (qName.equals("parent")) {
   ...
  } else if (qName.equals("child1")) {
    ...
  } else if (qName.startsWith("child")) {
    ...
  }
}

28 Nisan 2016 Perşembe

SecretKey Arayüzü

SecretKey
Giriş
Şu satırı dahil ederiz.
import javax.crypto.SecretKey;
Bir arayüzdür.

constructor
Şöyle üretilir.
KeySpec keySpec = ...;
SecretKeyFactory keyFactory = ...;
SecretKey key = keyFactory.generateSecret(keySpec);

AES
Anahtar uzunlukları 128 (16 byte) , 192 (24 byte) , and 256 (32 byte) bit olabilir.

Şöyle yaparız.
KeyGenerator keyGen = KeyGenerator.getInstance("AES");
keyGen.init(256);  //using AES-256
SecretKey key = keyGen.generateKey();  //generating key
Şöyle yaparız.
byte[] keyBytes = "1234123412341234".getBytes();  //example
SecretKey key = new SecretKeySpec(keyBytes, "AES");



CipherOutputStream Sınıfı

Giriş
Şu satırı dahil ederiz.
import javax.crypto.CipherOutputStream;
constructor
Şöyle yaparız.
Cipher cipher = ...;
try(FileOutputStream fos = new FileOutputStream(...)){
  try(CipherOutputStream cos = new CipherOutputStream(fos, cipher)){
    ...
  }
 }
}
write metodu
Şöyle yaparız.
byte buf[] = ...;
cos.write(buf);

CipherInputStream Sınıfı

Giriş
Şu satırı dahil ederiz.
import javax.crypto.CipherInputStream;
constructor
Şöyle yaparız.
try(FileInputStream fis = new FileInputStream(...)){
  Cipher cipher = ...;
  try(CipherInputStream cis = new CipherInputStream(fis, cipher)){
    ...
  }
}
read metodu
Şöyle yaparız.
byte buf[] = new byte[4096];
while((read = cis.read(buf)) != -1)  //reading from file
  ...
}

27 Nisan 2016 Çarşamba

PrivateKey Arayüzü

PrivateKey
Bir arayüzdür.

RSAPrivateKey Sınıfı
Constructor
Şöyle yaparız.
KeyFactory keyFactory = KeyFactory.getInstance("RSA", "BC");
RSAPrivateKeySpec privKeySpec = new RSAPrivateKeySpec(new BigInteger(
        "12345678", 16), new BigInteger("12345678",
        16));

RSAPrivateKey privKey = (RSAPrivateKey) keyFactory.generatePrivate(privKeySpec);


21 Nisan 2016 Perşembe

FileInputStream Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.io.FileInputStream;
constructor - string path
Şöyle yaparız.
String fileName = "C:/text.txt";
InputStream fin = new FileInputStream(fileName);
close metodu
Şöyle yaparız.
fin.close();
read metodu
Bir byte okur. Şöyle yaparız.
int i = fin.read();
read metodu - array
Şöyle yaparız.
int imageLength = ...;
byte[] rawBytes = new byte[imageLength];
fin.read(rawBytes, 0, imageLength);

19 Nisan 2016 Salı

FileOutputStream Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.io.FileOutputStream;
constructor - string path
Şöyle yaparız.
String path = ...;
FileOutputStream fout = new FileOutputStream(path);
close metodu
Şöyle yaparız.
fout.close();
write metodu
Bir byte yazar. Şöyle yaparız.
int i;
fout.write(i);

FileReader Sınıfı

Giriş
Şu satırı dahil ederiz.
import java.io.FileReader;
constructor - string
Şöyle yaparız.
new FileReader("C:\\test.txt")
constructor - File
Şöyle yaparız.
File file = new File("test.txt");
FileReader fr = new FileReader(file);