|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Provides access to members that return information about the fields.
The Fields object represents a collection of columns in a table. The term field is synonymous with column. Each table in a database has an ordered collection of fields, there is always at least one field in a table. The ordered collection behaves like a list, so it is possible to access individual fields by a numbered position (or index) in the list.
The IFields interface provides information about a Fields collection and also provides access to individual fields. This example finds any fields in a feature class which have a distinct alias name.
Set pFields = pFeatureClass.Fields
For i = 0 To (pFields.FieldCount - 1)
Set pField = pFields.Field(i)
If (pField.Name <> pField.AliasName) Then
Debug.Print pField.Name & “:” & pField.AliasName
End If
Next i
When using IFields::FindField, remember that there are equivalent methods on IClass and ICursor—they are shortcuts which save you having to get the Fields collection.
When programming with ArcMap, there is a distinction between IFields and two other interfaces, ILayerFields and ITableFields. ILayerFields is particular to an ArcMap layer, so for example, an alias name belongs to the field as defined in that layer rather than being stored with the underlying table.
| Method Summary | |
int |
findField(java.lang.String name)
Finds the index of the named field in the fields collection. |
int |
findFieldByAliasName(java.lang.String name)
Finds the index of the field with the alias name in the fields collection. |
IField |
getField(int index)
The field at the specified index in the fields collection. |
int |
getFieldCount()
The number of fields in the fields collection. |
| Method Detail |
public int getFieldCount()
throws java.io.IOException,
AutomationException
FieldCount is a one-based index. Therefore if you want to use IFields::FieldCount to get a particular index and use IFields::Field to get the field at the particular index, you will need to convert FieldCount to a zero-based index.
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public IField getField(int index)
throws java.io.IOException,
AutomationException
index - The index (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public int findField(java.lang.String name)
throws java.io.IOException,
AutomationException
If FindField returns -1, the Field could not be found in the Fields collection.
name - The name (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
public int findFieldByAliasName(java.lang.String name)
throws java.io.IOException,
AutomationException
name - The name (in)
java.io.IOException - If there are interop problems.
AutomationException - If the ArcObject component throws an exception.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||