Makale numarası: 151335 - Son Gözden Geçirme: 17 Ağustos 2005 Çarşamba - Gözden geçirme: 2.1 Ikili Access dosyaları ile çalışma
Bu SayfadaÖzetTek başına bir dosya bir dizi ilgili bayt disklerde bulunan birden fazla şey oluşur. Uygulamanızı bir dosyaya eriştiğinde, bunun ne Baytlar (tamsayılar, dizeler veya diğer veri türlerini) gösteren beklenen hakkındaki varsayımları yapmanız gerekir. Microsoft Excel Visual Basic for Applications, işlev ve deyimleri üzerinde Bu varsayımlar temel dosyayı işlemek izin sağlar. Işleme dosyaları, uygulama oluşturabilir, işleme ve büyük miktarda veri depolamak, birkaç veri kümesini de aynı anda erişmek ve veri diğer uygulamalarla paylaşma. Ancak, istediğiniz verileri depolamak için dosyaları kullanmak ikili erişim verir; veri türü veya standart kayıt uzunluğu gereksinimleri hakkında yapılan hiçbir varsayımlar vardır. Ancak, tam olarak nasıl verileri için dosya, doğru olarak almak için yazılan bilmelisiniz. Daha fazla bilgiMicrosoft, programlama örneklerini yalnızca gösterim amacıyla sağlar; örtülü veya açık garanti vermez. Buna satılabilirlik veya belirli bir amaca uygunluk zımni garantileri de dahildir, ancak bunlarla sınırlı değildir. Bu makale, gösterilen programlama dilini ve yordamları oluşturmak ve hata ayıklamak amacıyla kullanılan araçları kullanmayı bildiğinizi varsayar. Microsoft destek mühendisleri, belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilir, ancak gereksinimlerinizi karşılamaya yönelik olarak ek işlevsellik sağlamak veya yordamlar geliştirmek amacıyla bu örnekleri değiştirmezler. Rasgele dosya erişim farklı olarak, ikili dosya erişimi, değişken uzunlukta kayıt vardır. Erişilen bir ikili dosyada hiçbir harcanan alanı yok. 112 Dosya konumunda bir tamsayı olarak veri almak, bir <a0>Tamsayı</a0> veri türü, iki bayt gerektirir, çünkü bayt 112 ve 113 bir tamsayı değeri yapmak alınır. Bu iki bayt daha önce depolanmış olarak uzun 4 baytlık bir parçası olabilir, önemli değildir. Bu dosyanın içeriğini izlemek ve bu tür eylemlerin doğru olduğundan emin olun, uygulamanızın kadar olur. Ikili dosya erişimi için bir örnek veri türü şudur:
Type Person
LName as String
FName as String
Age as Integer
End Type
LName ve FName dizeleri, değişken uzunluklu veri türü olan unutmayın. Yaş bir 2 bayt veri türü, tamsayıdır. Veri türlerine göre gerekli bayt hakkında daha fazla bilgi için bkz: çevrimiçi Yardım konusunda, "Veri türü Özet." Access ikili dosyaların yararları
Ikili Access dosyalar dezavantajı
Ikili erişim için açık olan dosyaya yazmaDeğişken uzunlukta ikili erişim kayıtlarıyla olabileceğinden, gerçekte başarıyla okunabilir her alan kaydı ve boyutu hakkındaki bilgileri saklamak gereklidir. Bunu yapmanın iyi bir yolu, dize uzunluğunu belirtmek için bir tamsayı her dizesiyle saklamaktır. Böyle bir dosya oluşturma konusunda bir örnek aşağıda verilmiştir:
Type Person
LName as String
FName as String
Age as Integer
End Type
WriteBinary makroyu çalıştırdığınızda, BINARY.TXT adlı bir dosya oluşturur. 34 Bayt (karşıt olarak aynı verilerle rasgele erişim için gereken 44 bayt) kadar bu örnekteki iki kayıtları alır. Not Defteri gibi bir metin düzenleyicisinde bu dosyayı açarken dosyanın okunamaz unutmayın. Bu, bir metin dosyası değil bir ikili dosya olur. Sabit uzunluklu alanları ve rasgele erişim yerine, değişken uzunlukta alan ve ikili erişim kullanarak BIR denge rasgele erişim kullanarak bir tek bir işlev çağrısı ile tüm kaydı yazılabilir olur. Daha fazla esneklik ikili erişim sağlamasına karşın, g/Ç işlemleri işlemek için daha fazla kod de gerektirir. Okuma dosyaları ikili erişimi için açıldı.GET ifadesi bayt için kullanılan değişkeni için gereken bayt eşit bir sayı okur. Kullandığınızda değişken uzunluklu bir dizeyle Al, bir dosyadan okunan bayt sayısı, dize uzunluğu geçerli eşittir. Geçici değişken uzunluklu bir dize uzunluğunu ayarlamak için <a0></a0>, STRING $ işlevi değişken eşit boşluk veya boşluk belirli bir sayıya ayarlamak için kullanabilirsiniz.Aşağıdaki örnekte, benzer WriteBinary makro ile oluşturulan bir dosyayı okur:
Type Person
LName as String
FName as String
Age as Integer
End Type
Bu makaledeki bilginin uygulandığı durum:
Otomatik TercümeÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir. Makalenin İngilizcesi aşağıdaki gibidir:151335
(http://support.microsoft.com/kb/151335/en-us/
)
| Diğer Kaynaklar Diğer Destek Siteleri
ToplulukHemen Yardım AlMakale çevirileri
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email



Üste