Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Arrow up icon
GO TO TOP
C# 6 and .NET Core 1.0

You're reading from   C# 6 and .NET Core 1.0 Modern Cross-Platform Development

Arrow left icon
Product type Paperback
Published in Mar 2016
Publisher
ISBN-13 9781785285691
Length 550 pages
Edition 1st Edition
Languages
Arrow right icon
Toc

Table of Contents (25) Chapters Close

C# 6 and .NET Core 1.0
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Hello, C#! Welcome, .NET Core! FREE CHAPTER 2. Speaking C# 3. Controlling the Flow, Converting Types, and Handling Exceptions 4. Using Common .NET Types 5. Using Specialized .NET Types 6. Building Your Own Types with Object-Oriented Programming 7. Implementing Interfaces and Inheriting Classes 8. Working with Relational Data Using the Entity Framework 9. Querying and Manipulating Data with LINQ 10. Working with Files, Streams, and Serialization 11. Protecting Your Data and Applications 12. Improving Performance and Scalability with Multitasking 13. Building Universal Windows Platform Apps Using XAML 14. Building Web Applications and Services Using ASP.NET Core 15. Taking C# Cross-Platform 16. Building a Quiz Answers to the Test Your Knowledge Questions Creating a Virtual Machine for Your Development Environment Index

Chapter 10 – Working with Files, Streams, and Serialization


  1. What is the difference between using the File class and the FileInfo class?

    The File class has static methods so it cannot be instantiated. It is best used for one-off tasks such as copying a file. The FileInfo class requires the instantiation of an object that represents a file. It is best used when you need to perform multiple operations on the same file.

  2. What is the difference between the ReadByte method and the Read method of a stream?

    The ReadByte method returns a single byte each time it is called and the Read method fills a temporary array with bytes up to a specified length. It is generally best to use Read to process blocks of bytes at once.

  3. When would you use the StringReader, the TextReader, and the StreamReader classes?

    • StringReader is used for efficiently reading from a string stored in memory

    • TextReader is an abstract class that StringReader and StreamReader both inherit from for their shared functionality

    • StreamReader is used for reading strings from a stream that can be any type of text file, including XML and JSON

  4. What does the DeflateStream type do?

    DeflateStream implements the same compression algorithm as GZIP but without a cyclical redundancy check, so although it produces smaller compressed files, it cannot perform integrity checks when decompressing.

  5. How many bytes per character does the UTF-8 encoding use?

    It depends on the character. Most Western alphabet characters are stored using a single byte. Other characters may need two or more bytes.

  6. What is an object graph?

    An object graph is any instance of classes in memory that reference each other, thereby forming a set of related objects. For example, a Customer object may have a property that references a set of Order instances.

  7. What is the best serialization format to choose for minimizing space requirements?

    JavaScript Object Notation (JSON).

  8. What is the best serialization format to choose for cross-platform compatibility?

    eXtensible Markup Language (XML), although JSON is almost as good these days.

  9. Which Microsoft technology uses the DataContractSerializer class by default?

    Windows Communication Foundation (WCF) for creating SOAP services.

  10. Is it possible to create your own custom runtime serializers?

    Yes. Create a class that implements the interface System.Runtime.Serialization.IFormatter. For details, visit:

    https://msdn.microsoft.com/en-us/library/system.runtime.serialization.iformatter(v=vs.110).aspx

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at £13.99/month. Cancel anytime
Visually different images