Bunların artık çöp olduğunu hatırlayıp yeni komutlara yönelmeliyiz.
PHP Kod:
#include <amxmodx>
//Öncelikle global bir dosya adı değişkeni oluşturmamız gerekiyor.
new szFileName[128];
//Plugin init bölümünde dosya adını ayarlıyoruz.
public plugin_init() {
//...
//Burada addons/amxmodx/configs/ yazdırdık.
get_localinfo("amxx_configsdir", szFileName, charsmax(szFileName));
//Burada da devamını yazdırdık.
add(szFileName, charsmax(szFileName), "/dosyaadi.ini");
}
//Dosya Okuma
public DosyayiSadeceOku() {
//Öncelikle dosyayı okuyacağımız yeri algılatıp değere aktarıyoruz.
new iFile = fopen(szFileName, "r");
// fopen
// Birinci değer dosya adı
// İkinci değer fopen komutunun özelliği (file.inc de bulabilirsiniz)
//Dosyanın açılıp açılmadığını kontrol edeceğiz.
if(iFile) {
//İçindeki değerleri bu değere aktarmamız için değişken oluşturuyoruz.
//MAX_FMT_LENGTH = 128 , bunu artırabilir veya azaltabilirsiniz.
new szBuffer[MAX_FMT_LENGTH];
//Dosyanın sonuna kadar okuyacağız
//feof gerek duyulmuyor. https://forums.alliedmods.net/showpost.php?p=2679189&postcount=6
while(fgets(iFile, szBuffer, charsmax(szBuffer))) {
//Boş satırları çıkaracağız. Eğer satır boşsa çıkarıyor.
if(szBuffer[0] == EOS) {
continue;
}
//Burada çektiğiniz kodlarla istediğini yapabilirsiniz.
//Array oluşturup çektiğiniz komutları Array'a aktarabileceğiniz bölümdür.
}
//Daha sonra dosyayı kapatıyoruz.
fclose(iFile);
}
}
//Dosyaya bir şey yazma
public DosyayaYaz() {
//Öncelikle dosyayı okuyacağımız yeri algılatıp değere aktarıyoruz.
new iFile = fopen(szFileName, "a+");
// fopen
// Birinci değer dosya adı
// İkinci değer fopen komutunun özelliği (file.inc de bulabilirsiniz)
//Dosyanın açılıp açılmadığını kontrol edeceğiz.
if(iFile) {
// İki çeşit yazma şekli var. [İkinciyi öneririm]
//Birinci yol, var olan bir değişkeni dosyaya yazmak
//MAX_FMT_LENGTH = 128 , bunu artırabilir veya azaltabilirsiniz.
new szYazi[MAX_FMT_LENGTH];
formatex(szYazi, charsmax(szYazi), "Yazılacak yazı: Dosya adını yazıya ekle %s", szFileName);
fputs(iFile, szYazi);
// fputs
// Birinci değer dosya değişkeni
// İkinci değer yazılacak yazı
//İkinci yol
fprintf(iFile, "Yazılacak yazı: Dosya adını yazıya ekle %s", szFileName);
// fprintf
// Birinci değer dosya değişkeni
// İkinci değer yazılacak yazı
// Üçüncü değer yazılacak yazının ekleri (%s -> dosya adı gibi)
//Daha sonra dosyayı kapatıyoruz.
fclose(iFile);
}
}
)

